@imtbl/sdk 1.45.7-alpha.1 → 1.45.7-alpha.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/blockchain_data.js +2 -2
- package/dist/browser/checkout/{BridgeWidget-64c347f2.js → BridgeWidget-71bff744.js} +1 -1
- package/dist/browser/checkout/{OnRampWidget-422f0deb.js → OnRampWidget-46fe907f.js} +1 -1
- package/dist/browser/checkout/{SaleWidget-db0a4da8.js → SaleWidget-033701bb.js} +1 -1
- package/dist/browser/checkout/{SpendingCapHero-e05cde66.js → SpendingCapHero-140d6190.js} +1 -1
- package/dist/browser/checkout/{SwapWidget-e433536e.js → SwapWidget-ed9dac16.js} +1 -1
- package/dist/browser/checkout/{TopUpView-e2509396.js → TopUpView-1ee8b40b.js} +1 -1
- package/dist/browser/checkout/{WalletWidget-e977ad55.js → WalletWidget-384ebef3.js} +1 -1
- package/dist/browser/checkout/{auto-track-4d0daee8.js → auto-track-9b783917.js} +1 -1
- package/dist/browser/checkout/{balance-697e25e1.js → balance-014b0b9b.js} +1 -1
- package/dist/browser/checkout/{index-5f876d53.js → index-025c2664.js} +1 -1
- package/dist/browser/checkout/{index-f28c8046.js → index-2c33ea6e.js} +1 -1
- package/dist/browser/checkout/{index-33d10388.js → index-48317d33.js} +2 -2
- package/dist/browser/checkout/index-74eb20b3.js +1 -0
- package/dist/browser/checkout/{index-2b1e0855.js → index-a3287251.js} +1 -1
- package/dist/browser/checkout/{index-6cfa4a78.js → index-c9345ba9.js} +1 -1
- package/dist/browser/checkout/{index-24dea9a2.js → index-ea648d72.js} +1 -1
- package/dist/browser/checkout/{index-7be33d6b.js → index-fa9a3407.js} +1 -1
- package/dist/browser/checkout/{index.umd-0d0184c5.js → index.umd-f925be7c.js} +1 -1
- package/dist/browser/checkout/{retry-2ec883f6.js → retry-f9fd4fab.js} +1 -1
- package/dist/browser/checkout/sdk.js +4 -4
- package/dist/browser/checkout/widgets-esm.js +1 -1
- package/dist/browser/checkout/widgets.js +1 -1
- package/dist/checkout.js +4 -4
- package/dist/config.js +1 -1
- package/dist/index.browser.js +4 -4
- package/dist/index.cjs +7 -7
- package/dist/index.js +7 -7
- package/dist/minting_backend.js +2 -2
- package/dist/orderbook.js +1 -1
- package/dist/passport.js +4 -4
- package/dist/webhook.js +1 -1
- package/dist/x.js +3 -3
- package/package.json +1 -1
- package/dist/browser/checkout/index-0b6090b7.js +0 -1
package/dist/blockchain_data.js
CHANGED
|
@@ -5339,7 +5339,7 @@ const flattenProperties = (properties) => {
|
|
|
5339
5339
|
};
|
|
5340
5340
|
|
|
5341
5341
|
// WARNING: DO NOT CHANGE THE STRING BELOW. IT GETS REPLACED AT BUILD TIME.
|
|
5342
|
-
const SDK_VERSION = '1.45.7-alpha.
|
|
5342
|
+
const SDK_VERSION = '1.45.7-alpha.2';
|
|
5343
5343
|
const getFrameParentDomain = () => {
|
|
5344
5344
|
if (isNode()) {
|
|
5345
5345
|
return '';
|
|
@@ -5610,7 +5610,7 @@ class APIError extends Error {
|
|
|
5610
5610
|
|
|
5611
5611
|
/* eslint-disable implicit-arrow-linebreak */
|
|
5612
5612
|
const defaultHeaders = {
|
|
5613
|
-
sdkVersion: 'ts-immutable-sdk-multi-rollup-api-client-1.45.7-alpha.
|
|
5613
|
+
sdkVersion: 'ts-immutable-sdk-multi-rollup-api-client-1.45.7-alpha.2',
|
|
5614
5614
|
};
|
|
5615
5615
|
/**
|
|
5616
5616
|
* createAPIConfiguration to create a custom Configuration
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{bG as e,j as t,_ as a,aq as n,o as s,k as o,K as r,bH as i,r as l,I as c,b2 as d,n as u,bI as p,M as w,aN as g,l as h,d as f,a as b,bJ as m,ag as v,bK as x,Q as T,bL as E,P as y,bf as I,t as A,U as S,aP as k,V as C,aD as R,p as _,a8 as D,aa as N,be as P,bM as L,bN as W,G as O,X as B,bO as M,Y as G,E as F,w as z,y as U,T as V,x as $,bP as H,bQ as K,bR as J,$ as j,a2 as q,bS as Q,a3 as Y,bT as X,bU as Z,bV as ee,aj as te,aZ as ae,bW as ne,H as se,a5 as oe,bX as re,a4 as ie,a7 as le,B as ce,a0 as de,A as ue,v as pe,bh as we,bj as ge,b8 as he,bd as fe,bY as be,at as me,as as ve,bZ as xe,bn as Te,bi as Ee,b_ as ye,b$ as Ie,bp as Ae,L as Se,c0 as ke,c1 as Ce,ab as Re,ac as _e,c2 as De,ae as Ne,bq as Pe,c3 as Le,c4 as We,bg as Oe,ah as Be,ai as Me,c5 as Ge,bs as Fe,c6 as ze,bt as Ue,aL as Ve,ak as $e,c7 as He,c8 as Ke,c9 as Je}from"./index-33d10388.js";import{B as je,C as qe,f as Qe,a as Ye,p as Xe,T as Ze,b as et}from"./TopUpView-e2509396.js";import{T as tt,r as at,u as nt}from"./retry-2ec883f6.js";import{A as st,S as ot,T as rt,a as it,g as lt,F as ct,N as dt,W as ut}from"./balance-697e25e1.js";const{Axios:pt,AxiosError:wt,CanceledError:gt,isCancel:ht,CancelToken:ft,VERSION:bt,all:mt,Cancel:vt,isAxiosError:xt,spread:Tt,toFormData:Et,AxiosHeaders:yt,HttpStatusCode:It,formToJSON:At,getAdapter:St,mergeConfig:kt}=e;var Ct=["leftSideLength","rightSideLength","text","rc","sx"],Rt=["use"],_t=["size"],Dt=["weight"];function Nt(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function Pt(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?Nt(Object(a),!0).forEach((function(t){o(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):Nt(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function Lt(e){var o=e.leftSideLength,r=void 0===o?8:o,i=e.rightSideLength,l=void 0===i?4:i,c=e.text,d=e.rc,u=void 0===d?t("span",{}):d,p=e.sx,w=a(e,Ct),g="use"in w?w:Pt(Pt({},w),{},{use:void 0}),h=g.use,f=a(g,Rt),b="size"in f?f:Pt({size:void 0},f),m=b.size,v=a(b,_t),x="weight"in v?v:Pt({weight:void 0},v),T=x.weight,E=a(x,Dt),y=function(e){var t=e.text,a=e.leftSideLength,n=void 0===a?4:a,s=e.rightSideLength,o=void 0===s?4:s;if(n+o>=t.length)return t;var r=t.substring(0,n),i=t.substring(t.length-o,t.length);return"".concat(r,"...").concat(i)}({leftSideLength:r,rightSideLength:l,text:c});return n(h||t(s,{size:m,weight:T}),Pt(Pt({},E),{},{rc:u,sx:p,children:y}))}async function Wt(e,t,a){let n=!1,s=t;try{const{isConnected:a}=await e.checkIsWalletConnected({provider:t});n=a}catch(e){throw console.error(e),e}if(!n||a)try{const{provider:o}=await e.connect({provider:t,requestWalletPermissions:a});s=o,n=!0}catch(e){throw e.type===r.USER_REJECTED_REQUEST_ERROR&&console.log("User rejected request"),console.error(e),e}return s}Lt.displayName="EllipsizedText";class Ot{url;ttl;env;cacheMap;setCache(e,t){this.cacheMap[e]={data:t,ttl:(new Date).getTime()+1e3*this.ttl}}getCache(e){const t=this.cacheMap[e];return!t||t.ttl<=(new Date).getTime()?null:t.data}constructor(e){this.env=e.env,this.url=`${i[this.env]}/checkout`,this.cacheMap={},this.ttl=void 0!==e.ttl?e.ttl:60}static isHttpError=e=>"code"in e;async getTransactions(t){const{txType:a,fromAddress:n}=t;try{const t=`${this.url}/v1/transactions?from_address=${n}&tx_type=${a}`,s=this.getCache(t);if(s)return Promise.resolve(s);const o=await e.get(t);if(o.status>=400)return Promise.reject({code:o.status,message:o.statusText});const{data:r}=o;return this.setCache(t,r),Promise.resolve(r)}catch(t){let a=It.InternalServerError,n="InternalServerError";return e.isAxiosError(t)&&(a=t.response?.status||a,n=t.message),Promise.reject({code:a,message:n})}}}var Bt;!function(e){e.BRIDGE="bridge"}(Bt||(Bt={}));const Mt={IN_PROGRESS:"in_progress",WITHDRAWAL_PENDING:"withdrawal_pending"},Gt={web3Provider:null,walletProviderName:null,from:null,to:null,tokenBridge:null,tokenBalances:[],allowedTokens:[],token:null,amount:"0"};var Ft;!function(e){e.SET_WALLETS_AND_NETWORKS="SET_WALLETS_AND_NETWORKS",e.SET_WALLET_PROVIDER_NAME="SET_WALLET_PROVIDER_NAME",e.SET_PROVIDER="SET_PROVIDER",e.SET_TOKEN_BRIDGE="SET_TOKEN_BRIDGE",e.SET_TOKEN_BALANCES="SET_TOKEN_BALANCES",e.SET_ALLOWED_TOKENS="SET_ALLOWED_TOKENS",e.SET_TOKEN_AND_AMOUNT="SET_TOKEN_AND_AMOUNT"}(Ft||(Ft={}));const zt=l.createContext({bridgeState:{...Gt,checkout:{}},bridgeDispatch:()=>{}});zt.displayName="BridgeContext";const Ut=(e,t)=>{switch(t.payload.type){case Ft.SET_WALLETS_AND_NETWORKS:return{...e,from:t.payload.from,to:t.payload.to};case Ft.SET_WALLET_PROVIDER_NAME:return{...e,walletProviderName:t.payload.walletProviderName};case Ft.SET_PROVIDER:return{...e,web3Provider:t.payload.web3Provider};case Ft.SET_TOKEN_BRIDGE:return{...e,tokenBridge:t.payload.tokenBridge};case Ft.SET_TOKEN_BALANCES:return{...e,tokenBalances:t.payload.tokenBalances};case Ft.SET_ALLOWED_TOKENS:return{...e,allowedTokens:t.payload.allowedTokens};case Ft.SET_TOKEN_AND_AMOUNT:return{...e,token:t.payload.token,amount:t.payload.amount};default:return e}},Vt=(e,t)=>{const a=new CustomEvent(c.IMTBL_BRIDGE_WIDGET_EVENT,{detail:{type:d.TRANSACTION_SENT,data:{transactionHash:t}}});console.log("bridge success ",e,a),void 0!==e&&e.dispatchEvent(a)};function $t(e){const t=new CustomEvent(c.IMTBL_BRIDGE_WIDGET_EVENT,{detail:{type:d.CLOSE_WIDGET,data:{}}});console.log("bridge close ",e,t),void 0!==e&&e.dispatchEvent(t)}function Ht(){return u(g,{sx:{gap:"base.spacing.x2"},children:[t(p,{sx:{h:"base.spacing.x4",w:"base.spacing.x32",mt:"base.spacing.x2"}}),t(w,{shimmer:!0,emphasized:!0,size:"small"}),t(w,{shimmer:!0,emphasized:!0,size:"small"}),t(w,{shimmer:!0,emphasized:!0,size:"small"})]})}const Kt={px:"base.spacing.x4",display:"flex",flexDirection:"column",height:"100%"},Jt={flexGrow:"1",flexShrink:"0",flexBasis:"0"},jt={flexGrow:"0",flexShrink:"1",mt:"base.spacing.x2"},qt={bg:"base.color.translucent.emphasis.100",borderRadius:"base.borderRadius.x4",display:"flex",alignItems:"center",justifyContent:"center",flexDirection:"column",height:"100%",px:"base.spacing.x5"};function Qt({openWalletDrawer:e}){const{t:a}=h();return u(b,{sx:qt,children:[t(s,{sx:{mb:"base.spacing.x8"},children:a("views.TRANSACTIONS.status.emptyState.notConnected.body")}),t(f,{variant:"secondary",size:"medium",testId:"transactions-connect-wallet-button",onClick:e,children:a("views.TRANSACTIONS.status.emptyState.notConnected.buttonText")})]})}const Yt={backgroundColor:"base.color.neutral.800",px:"base.spacing.x4",p:"base.spacing.x5",borderRadius:"base.borderRadius.x6"},Xt={color:"base.color.text.body.secondary"};function Zt({checkout:e,isPassport:a}){const{t:n}=h(),[o,r]=l.useState("");return l.useEffect((()=>{e&&r(m[e.config.environment])}),[e]),t(b,{sx:Yt,children:u(b,{sx:{display:"flex",flexDirection:"column"},children:[u(b,{children:[t(s,{size:"small",children:n("views.TRANSACTIONS.support.body1")}),u(s,{size:"small",sx:Xt,children:[n("views.TRANSACTIONS.support.body2"),t(v,{size:"small",rc:t("a",{target:"_blank",href:n("views.TRANSACTIONS.support.supportLink"),rel:"noreferrer"}),children:n("views.TRANSACTIONS.support.body3")})]})]}),a&&u(s,{size:"small",sx:Xt,children:[n("views.TRANSACTIONS.support.passport.body1")," ",t(v,{size:"small",rc:t("a",{target:"_blank",href:o,rel:"noreferrer"}),children:n("views.TRANSACTIONS.support.passport.body2")})]})]})})}const ea={display:"flex",flexDirection:"column",borderRadius:"base.borderRadius.x4",bg:"base.color.translucent.emphasis.100"},ta={p:"base.spacing.x3",d:"flex",justifyContent:"space-between",position:"relative"},aa={display:"flex",flexGrow:"1",alignItems:"center",gap:"base.spacing.x2"};function na({transaction:e,environment:a}){const n=x(e.details.from_chain),o=x(e.details.to_chain);return u(b,{sx:{display:"flex",px:"base.spacing.x4",gap:"base.spacing.x2"},children:[t(y,{sx:{w:"base.icon.size.400",h:"base.icon.size.400"},use:t("img",{src:T(a,n),alt:E[n]})}),u(b,{sx:{display:"flex",flexDirection:"column",flexGrow:"1"},children:[t(s,{size:"xxSmall",sx:{color:"base.color.translucent.standard.900"},children:E[n]}),t(Lt,{size:"xxSmall",sx:{color:"base.color.translucent.standard.600"},text:e.details.from_address})]}),t(b,{sx:{flexGrow:"1"}}),t(I,{icon:"ArrowForward",sx:{w:"base.icon.size.250",fill:"base.color.brand.4"}}),t(b,{sx:{flexGrow:"1"}}),t(y,{sx:{w:"base.icon.size.400",h:"base.icon.size.400"},use:t("img",{src:T(a,o),alt:E[o]})}),u(b,{sx:{display:"flex",flexDirection:"column",flexGrow:"1"},children:[t(s,{size:"xxSmall",sx:{color:"base.color.translucent.standard.900"},children:E[o]}),t(Lt,{size:"xxSmall",sx:{color:"base.color.translucent.standard.600"},text:e.details.to_address})]})]})}function sa({label:e,details:a,transaction:n,fiatAmount:s,amount:o,icon:r,defaultTokenImage:i,environment:c}){const{track:d}=A(),p=l.useMemo((()=>`${a.link}${a.hash}`),[a]);return t(b,{testId:`transaction-item-${n.blockchain_metadata.transaction_hash}`,sx:ea,children:u(st,{chevronSide:"right",sx:{button:{p:"base.spacing.x1"},article:{pr:"base.spacing.x10"}},onExpandChange:e=>e&&d({userJourney:S.BRIDGE,screen:"TransactionItem",control:"Accordion",controlType:"Button"}),children:[t(st.TargetLeftSlot,{sx:{pr:"base.spacing.x2"},children:u(w,{size:"xSmall",children:[t(w.FramedImage,{circularFrame:!0,use:t(tt,{src:r,name:e,defaultImage:i})}),t(w.Label,{children:e}),t(w.Caption,{children:t(v,{size:"xSmall",rc:t("a",{target:"_blank",href:p,rel:"noreferrer",onClick:e=>{return t=a,e.stopPropagation(),void d({userJourney:S.BRIDGE,screen:"TransactionItem",control:"Details",controlType:"Link",extras:{linkDetail:t}});var t}}),children:a.text})}),t(w.PriceDisplay,{fiatAmount:s,price:o})]})}),u(st.ExpandedContent,{sx:{pr:"0",pl:"0",mb:"base.spacing.x3",gap:"0"},children:[t(k,{size:"xSmall",sx:{px:"base.spacing.x2"}}),t(na,{transaction:n,environment:c})]})]})})}const oa=e=>{let t=440;return e&&(t-=20),{backgroundColor:"base.color.neutral.800",px:"base.spacing.x4",pt:"base.spacing.x5",pb:"base.spacing.x4",borderRadius:"base.borderRadius.x6",h:`${t}px`,w:"100%",overflowY:"scroll"}},ra={borderRadius:"base.borderRadius.x4",display:"flex",flexDirection:"column",gap:"base.spacing.x5"};function ia({label:e,transaction:a,fiatAmount:n,amount:o,icon:r,defaultTokenImage:i,environment:c}){const{viewDispatch:d}=l.useContext(C),{track:p}=A(),g=h(),m=l.useMemo((()=>(new Date).getTime()),[]),v=l.useMemo((()=>a.details.current_status.withdrawal_ready_at?new Date(a.details.current_status.withdrawal_ready_at):void 0),[a]),x=a.details.current_status.status===Mt.WITHDRAWAL_PENDING,T=new Intl.RelativeTimeFormat(g[1].language||"en",{numeric:"auto"}),E=l.useMemo((()=>{if(!x||void 0===v)return"";const e=(v.getTime()-m)/6e4;if(e<=1)return"in 1 minute";if(e<60)return T.format(Math.ceil(e),"minute");const t=e/60;if(e<1440)return T.format(Math.ceil(t),"hour");const a=t/24;return T.format(Math.ceil(a),"day")}),[m,g[1].language]),y=!!v&&v.getTime()<m,D=l.useMemo((()=>!0===y?g.t("views.TRANSACTIONS.status.withdrawalPending.withdrawalReadyText"):`${g.t("views.TRANSACTIONS.status.withdrawalPending.withdrawalDelayText")} ${E}`),[E,g[1].language]);return u(b,{testId:`transaction-item-${a.blockchain_metadata.transaction_hash}`,sx:ea,children:[x&&u(R,{children:[u(b,{sx:ta,children:[u(b,{sx:aa,children:[t(I,{icon:"Alert",variant:"bold",sx:{fill:y?"base.color.status.fatal.bright":"base.color.status.attention.bright",w:"base.icon.size.200"}}),t(s,{testId:`transaction-item-${a.blockchain_metadata.transaction_hash}-action-message`,size:"xSmall",sx:{color:"base.color.text.body.secondary"},children:D})]}),x&&y&&t(f,{testId:`transaction-item-${a.blockchain_metadata.transaction_hash}-action-button`,variant:"primary",size:"small",onClick:()=>{d({payload:{type:_.UPDATE_VIEW,view:{type:je.CLAIM_WITHDRAWAL,transaction:a}}})},children:g.t("views.TRANSACTIONS.status.withdrawalPending.actionButtonText")})]}),t(k,{size:"small",sx:{color:"base.color.translucent.emphasis.300",opacity:.1}})]}),u(st,{chevronSide:"right",sx:{button:{p:"base.spacing.x1"},article:{pr:"base.spacing.x10"},borderTopRightRadius:"0",borderTopLeftRadius:"0"},onExpandChange:e=>e&&p({userJourney:S.BRIDGE,screen:"TransactionItem",control:"Accordion",controlType:"Button"}),children:[t(st.TargetLeftSlot,{sx:{pr:"base.spacing.x2"},children:u(w,{size:"xSmall",children:[t(w.FramedImage,{circularFrame:!0,use:t(tt,{src:r,name:e,defaultImage:i})}),t(w.Label,{children:e}),t(w.Caption,{children:g.t("views.TRANSACTIONS.status.withdrawalPending.caption")}),t(w.PriceDisplay,{fiatAmount:n,price:o})]})}),u(st.ExpandedContent,{sx:{pr:"0",pl:"0",mb:"base.spacing.x3",gap:"0"},children:[t(k,{size:"xSmall",sx:{px:"base.spacing.x2"}}),t(na,{transaction:a,environment:c})]})]})]})}const la={display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",p:"base.spacing.x2",pb:"base.spacing.x4"},ca={position:"relative",pr:"base.spacing.x2"},da={width:"base.icon.size.400"},ua={position:"absolute",top:"-6px",left:"18px",width:"20px",padding:"2px",backgroundColor:"base.color.translucent.inverse.900",borderRadius:"base.borderRadius.x2"},pa={backgroundColor:"transparent",width:"base.icon.size.400",height:"base.icon.size.400",marginRight:"base.spacing.x1",padding:"base.spacing.x1"};function wa({onChangeWalletClick:e}){const{t:a}=h(),{bridgeState:{from:n}}=l.useContext(zt),[s,o]=l.useState(void 0),[r,i]=l.useState(!1),{isWalletConnectEnabled:c,getWalletLogoUrl:d}=D(),{track:p}=A(),w=n?.walletAddress||"",g=n?.walletProviderInfo;return l.useEffect((()=>{if(c){const e=N(n?.web3Provider);i(e),e&&(async()=>{o(await d())})()}}),[c,n]),u(b,{sx:la,children:[u(b,{sx:{display:"flex",alignItems:"center",gap:"base.spacing.x1"},children:[r&&s?u(b,{sx:ca,children:[t(y,{sx:da,use:t("img",{src:s,alt:"walletconnect"})}),t(P,{logo:"WalletConnectSymbol",sx:ua})]}):g&&t(L,{src:g.icon,alt:g.name,sx:pa}),t(Lt,{leftSideLength:6,rightSideLength:4,text:w})]}),t(f,{size:"small",variant:"tertiary",onClick:()=>{p({userJourney:S.BRIDGE,screen:je.TRANSACTIONS,controlType:"Button",control:"Pressed"}),e()},children:a("views.TRANSACTIONS.changeWallet.buttonText")})]})}function ga({checkout:e,transactions:a,knownTokenMap:n,isPassport:s,defaultTokenImage:o,changeWallet:r}){const{cryptoFiatState:i}=l.useContext(qe),{t:c}=h(),[d,p]=l.useState(""),{environment:w}=e.config;l.useEffect((()=>{e&&p(W[e.config.environment])}),[e]);const g=l.useCallback(((e,t)=>e.details.current_status.status===Mt.WITHDRAWAL_PENDING&&t.details.current_status.status!==Mt.WITHDRAWAL_PENDING?-1:e.details.current_status.status===t.details.current_status.status?0:1),[]),f=l.useCallback((t=>O(t.details.from_token_address)?B(e.config.environment,M(t.details.from_chain)):B(e.config.environment,t.details.from_token_address)),[e]);return u(b,{sx:oa(s),children:[t(wa,{onChangeWalletClick:r}),t(b,{testId:"move-transaction-list",sx:ra,children:a.sort(g).map((e=>{const a=e.blockchain_metadata.transaction_hash,s=n[e.details.from_chain][e.details.from_token_address.toLowerCase()],r=Qe(e.details.amount,s.decimals),l=G(r,s.symbol,i.conversions);return e.details.current_status.status===Mt.WITHDRAWAL_PENDING?t(ia,{label:s.symbol,transaction:e,fiatAmount:`${c("views.TRANSACTIONS.fiatPricePrefix")}${l}`,amount:r,icon:f(e),defaultTokenImage:o,environment:w},a):t(sa,{label:s.symbol,details:{text:c("views.TRANSACTIONS.status.inProgress.stepInfo"),link:d,hash:a},transaction:e,fiatAmount:`${c("views.TRANSACTIONS.fiatPricePrefix")}${l}`,amount:r,icon:f(e),defaultTokenImage:o,environment:w},a)}))})]})}const ha={backgroundColor:"base.color.neutral.800",px:"base.spacing.x4",pt:"base.spacing.x5",pb:"base.spacing.x4",borderRadius:"base.borderRadius.x6",h:"100%",w:"100%",display:"flex",flexDirection:"column"},fa={display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",padding:"base.spacing.x5",flex:1},ba={mb:"base.spacing.x8",color:"base.color.text.body.secondary"},ma={color:"base.color.text.body.secondary"};function va({checkout:e,isPassport:a,changeWallet:n}){const{page:o}=A(),{t:r}=h(),[i,c]=l.useState("");return l.useEffect((()=>{e&&c(m[e.config.environment])}),[e]),l.useEffect((()=>{o({userJourney:S.BRIDGE,screen:"NoTransactions"})}),[]),u(b,{sx:ha,children:[t(wa,{onChangeWalletClick:n}),u(b,{sx:fa,children:[t(s,{size:"small",sx:ba,children:r("views.TRANSACTIONS.status.noTransactions.body")}),a&&u(s,{size:"small",sx:ma,children:[r("views.TRANSACTIONS.status.noTransactions.passport.body")," ",t(v,{size:"small",rc:t("a",{target:"_blank",href:i,rel:"noreferrer"}),children:r("views.TRANSACTIONS.status.noTransactions.passport.link")})]})]})]})}function xa({defaultTokenImage:e,onBackButtonClick:a}){const{eventTargetState:{eventTarget:n}}=l.useContext(F),{cryptoFiatDispatch:s}=l.useContext(qe),{bridgeDispatch:o,bridgeState:{checkout:r,from:i}}=l.useContext(zt),{page:c}=A(),{t:d}=h(),{track:p}=A(),[w,g]=l.useState(!0),[f,m]=l.useState(void 0),[v,x]=l.useState([]),[T,E]=l.useState(!1),y=z(i?.web3Provider),I=l.useCallback((async()=>{if(!r)return{};const e=U(r.config);try{return((await r.getTokenAllowList({type:V.BRIDGE,chainId:e})).tokens??[]).reduce(((e,t)=>(e[t.address.toLowerCase()]=t,e)),{})}catch(e){return console.error(e),[]}}),[r]),k=l.useCallback((async()=>{if(!i?.web3Provider)return{};if(!i?.walletAddress)return{};const e=$(r.config);try{return(await r.getAllBalances({provider:i?.web3Provider,walletAddress:i?.walletAddress,chainId:e})).balances.reduce(((e,t)=>(e[t.token.address.toLowerCase()]=t.token,e)),{})}catch(e){return console.error(e),[]}}),[r,i]),C=async e=>{const t=X(U(r.config)),a=X($(r.config)),[n,o]=await Promise.all([I(),k()]),i={};Object.entries(e).forEach((([s,r])=>{(e[s]===t&&!n[s]||e[s]===a&&!o[s])&&(i[s]=r)}));const l=new Z(r.config.networkMap.get(U(r.config))?.rpcUrls[0]),c=new Z(r.config.networkMap.get($(r.config))?.rpcUrls[0]),d=[],u=[];Object.entries(i).forEach((([e,a])=>{a===t?d.push(r.getTokenInfo({provider:l,tokenAddress:e})):u.push(r.getTokenInfo({provider:c,tokenAddress:e}))}));const p=await Promise.allSettled(d),w=await Promise.allSettled(u);p.filter((e=>"fulfilled"===e.status)).forEach((e=>{const t=e;n[t.value.address.toLowerCase()]=t.value})),w.filter((e=>"fulfilled"===e.status)).forEach((e=>{const t=e;o[t.value.address.toLowerCase()]=t.value}));const g=[];return Object.values(n).forEach((e=>g.push(e.symbol.toLowerCase()))),Object.values(o).forEach((e=>g.push(e.symbol.toLowerCase()))),s({payload:{type:Ye.SET_TOKEN_SYMBOLS,tokenSymbols:g}}),{[t]:n,[a]:o}},R=l.useCallback((async(e,t)=>new Ot({env:e}).getTransactions({txType:Bt.BRIDGE,fromAddress:t})),[]),_=l.useCallback((async e=>{p({userJourney:S.BRIDGE,screen:"EmptyStateNotConnected",control:"WalletProvider",controlType:"Select",extras:{walletProviderName:e.providerDetail.info.name}});try{let t=!1;e.providerDetail.info.rdns===H.METAMASK&&(t=!0);const a=new K(e.provider),n=await Wt(r,a,t),s=await n.getNetwork(),i=await n.getSigner().getAddress();x([]),o({payload:{type:Ft.SET_WALLETS_AND_NETWORKS,from:{web3Provider:n,walletProviderInfo:{...e.providerDetail.info},walletAddress:i.toLowerCase(),network:s.chainId},to:null}})}catch(e){console.error(e)}finally{E(!1)}}),[r]),D=l.useCallback((async()=>{if(!i?.walletAddress)return;const e=await R(r.config.environment,i?.walletAddress),t={};return e.result.forEach((e=>{t[e.details.from_token_address]=e.details.from_chain})),{tokens:await C(t),transactions:e.result}}),[i,R]),{providers:N}=J({checkout:r}),P=l.useMemo((()=>N),[N]);return l.useEffect((()=>{(async()=>{g(!0);const e=await at(D,ee);if(!e)return void g(!1);const t=e.transactions.filter((t=>{const a=e.tokens[t.details.from_chain];if(!a)return!1;return!!a[t.details.from_token_address.toLowerCase()]}));m(e.tokens),x(t),g(!1)})()}),[i,r]),l.useEffect((()=>{c({userJourney:S.BRIDGE,screen:"Transactions"})}),[]),t(Y,{testId:"bridge-view",header:t(j,{showBack:!0,onBackButtonClick:()=>{i&&(o({payload:{type:Ft.SET_WALLETS_AND_NETWORKS,from:{web3Provider:i?.web3Provider,walletAddress:i?.walletAddress,walletProviderInfo:i?.walletProviderInfo,network:i?.network},to:null}}),o({payload:{type:Ft.SET_TOKEN_AND_AMOUNT,token:null,amount:""}})),a()},title:d("views.TRANSACTIONS.layoutHeading"),onCloseButtonClick:()=>$t(n)}),footer:t(q,{}),children:u(b,{sx:Kt,children:[u(b,{sx:Jt,children:[!i?.web3Provider&&t(Qt,{openWalletDrawer:()=>E(!0)}),i?.web3Provider&&w&&t(Ht,{}),i?.web3Provider&&!w&&v.length>0&&f&&t(ga,{checkout:r,transactions:v,knownTokenMap:f,isPassport:y,defaultTokenImage:e,changeWallet:()=>E(!0)}),i?.web3Provider&&!w&&0===v.length&&t(va,{checkout:r,isPassport:y,changeWallet:()=>E(!0)})]}),i?.web3Provider&&v.length>0&&t(b,{sx:jt,children:t(Zt,{checkout:r,isPassport:y})}),t(Q,{testId:"select-wallet-drawer",drawerText:{heading:d("views.TRANSACTIONS.walletSelection.heading")},showWalletSelectorTarget:!1,walletOptions:P,showDrawer:T,setShowDrawer:e=>{E(e)},onWalletChange:_})]})})}function Ta({transactionResponse:e}){const{t:a}=h(),{viewDispatch:n}=l.useContext(C),{page:s}=A();return l.useEffect((()=>{s({userJourney:S.BRIDGE,screen:"ClaimWithdrawalInProgress"})}),[]),l.useEffect((()=>{e&&(async()=>{try{const t=await e.wait();if(1===t.status)return void n({payload:{type:_.UPDATE_VIEW,view:{type:je.CLAIM_WITHDRAWAL_SUCCESS,transactionHash:t.transactionHash}}});n({payload:{type:_.UPDATE_VIEW,view:{type:je.CLAIM_WITHDRAWAL_FAILURE,transactionHash:t.transactionHash,reason:"Transaction failed"}}})}catch(e){console.error(e),n({payload:{type:_.UPDATE_VIEW,view:{type:je.CLAIM_WITHDRAWAL_FAILURE,transactionHash:"",reason:"Transaction failed"}}})}})()}),[e]),t(te,{loadingText:a("views.CLAIM_WITHDRAWAL.IN_PROGRESS.loading.text")})}function Ea(e){return e?e.substring(0,6).concat("...").concat(e.substring(e.length-4)):""}const ya={height:"100%",display:"flex",flexDirection:"column",paddingX:"base.spacing.x4"},Ia={paddingTop:"base.spacing.x10",paddingBottom:"base.spacing.x4"},Aa={display:"flex",flexDirection:"column",paddingY:"base.spacing.x6"};function Sa({testId:e,chainId:a,chainName:n,onNetworkClick:s,environment:o}){return u(w,{testId:`${e}-network-list-${a}`,size:"medium",emphasized:!0,onClick:async()=>{await s(a)},sx:{marginBottom:"base.spacing.x1"},children:[t(w.FramedImage,{use:t("img",{src:T(o,a),alt:n})}),t(w.Label,{size:"medium",children:n})]})}ae.IMTBL_ZKEVM_DEVNET,ae.IMTBL_ZKEVM_TESTNET,ae.IMTBL_ZKEVM_MAINNET,ae.ETHEREUM,ae.SEPOLIA;const ka={position:"relative",width:"100%",backgroundColor:"base.color.translucent.emphasis.100",borderRadius:"base.borderRadius.x4",paddingX:"base.spacing.x3",paddingY:"base.spacing.x5",display:"flex",flexDirection:"row",gap:"base.spacing.x4",alignItems:"center","&:hover":{cursor:"pointer",backgroundColor:"base.color.translucent.emphasis.200"}},Ca={width:"base.icon.size.500",backgroundColor:"base.color.translucent.standard.200",borderRadius:"base.borderRadius.x2"},Ra={position:"absolute",top:"14px",left:"38px",width:"28px",padding:"base.spacing.x1",backgroundColor:"base.color.translucent.inverse.900",borderRadius:"base.borderRadius.x2"},_a={color:"base.color.text.body.secondary"},Da={paddingY:"base.spacing.x6",borderRadius:"base.borderRadius.x18"};function Na({testId:e,walletProvider:a,walletProviderDetail:n,walletAddress:o,walletName:r,chainId:i,disableNetworkButton:c=!1,onWalletClick:d,onNetworkClick:p,environment:w}){const g=ne(i),[h,m]=l.useState(void 0),[v,x]=l.useState("Other"),[E,I]=l.useState(!1),{isWalletConnectEnabled:A,getWalletLogoUrl:S,getWalletName:k}=D(),C=l.useMemo((()=>n?.info.rdns===H.PASSPORT?r:N(a)?v:n?.info.name),[n,v,a]);return l.useEffect((()=>{if(A){const e=N(a);I(e),e&&((async()=>{m(await S())})(),x(k()))}}),[A,a,S,k]),u(b,{testId:`${e}-${n?.info.rdns}-${i}-button-wrapper`,sx:ka,onClick:d,children:[E&&h?u(R,{children:[t(y,{imageUrl:h,alt:"walletconnect",sx:Ca}),t(P,{logo:"WalletConnectSymbol",sx:Ra})]}):n&&t(L,{src:n.info.icon,alt:n.info.name}),u(b,{sx:{display:"flex",flexDirection:"column",flex:1},children:[t(se,{size:"xSmall",sx:{textTransform:"capitalize"},children:C}),t(s,{size:"xSmall",sx:_a,children:o})]}),u(f,{testId:`${e}-network-${i}-button`,size:"small",disabled:c,onClick:e=>{e.stopPropagation(),p(e)},variant:"tertiary",sx:Da,children:[t(y,{sx:{w:"base.icon.size.400",h:"base.icon.size.400"},use:t("img",{src:T(w,i),alt:g[i]})}),g]})]})}const Pa="wallet-network-selector";function La(){const{t:e}=h(),{bridgeState:{checkout:a,from:n,to:s},bridgeDispatch:o}=l.useContext(zt),{viewDispatch:r}=l.useContext(C),{providers:i}=J({checkout:a}),{environment:c}=a.config,{track:d}=A(),p=n?.web3Provider??null,w=n?.network??null,g=n?.walletAddress?.toLowerCase()??"",m=n?{provider:p,providerDetail:{provider:p,info:{...n.walletProviderInfo}}}:null,v=s?.web3Provider??null,x=s?.network??null,T=s?.walletAddress?.toLowerCase()??"",E=s?{provider:v,providerDetail:{provider:v,info:{...s.walletProviderInfo}}}:null,y=U(a.config),I=ne(y),k=$(a.config),R=ne(k),[D,P]=l.useState(!1),[L,W]=l.useState(!1),[O,B]=l.useState(p),[M,G]=l.useState(w),[F,V]=l.useState(g),[j,q]=l.useState(m),[Y,X]=l.useState(!1),[Z,ee]=l.useState(!1),[te,ae]=l.useState(v),[ce,de]=l.useState(x),[ue,pe]=l.useState(T),[we,ge]=l.useState(E),he=O&&M,fe=te&&ce,be=l.useMemo((()=>O?oe(O):null),[O]),me=l.useMemo((()=>te?oe(te):null),[te]),ve=l.useMemo((()=>i),[i]),xe=l.useMemo((()=>i.filter((e=>e.info.rdns!==H.PASSPORT||e.info.rdns===H.PASSPORT&&j?.providerDetail?.info?.rdns!==H.PASSPORT))),[i,M,j]);function Te(){ae(null),de(null)}l.useEffect((()=>{n&&s&&o({payload:{type:Ft.SET_WALLETS_AND_NETWORKS,from:null,to:null}})}),[n,s]);const Ee=l.useCallback((async e=>{Te(),q(e);let t=!1;e.providerDetail.info.rdns===H.METAMASK&&(t=!0);const n=new K(e.provider),s=await Wt(a,n,t);await(async e=>{B(e);const t=await e.getSigner().getAddress();if(V(t.toLowerCase()),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"FromWallet",controlType:"Select",extras:{walletAddress:t.toLowerCase()}}),z(e))return G(k),P(!1),void d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"FromNetwork",controlType:"Select",extras:{chainId:k}});G(null),P(!1),setTimeout((()=>W(!0)),500)})(s)}),[a]),ye=l.useCallback((async e=>{O&&(Te(),W(!1),G(e),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"FromNetwork",controlType:"Select",extras:{chainId:e}}))}),[a,O]),Ie=l.useCallback((async e=>{te&&(X(!1),de(e),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"ToNetwork",controlType:"Select",extras:{chainId:e}}))}),[a,te]),Ae=l.useCallback((e=>{const t=F===e&&M===k?y:k;de(t),ee(!1),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"ToNetwork",controlType:"Select",extras:{chainId:t}})}),[F,M]),Se=l.useCallback((e=>{ae(e),e.getSigner().getAddress().then((e=>{pe(e.toLowerCase()),Ae(e.toLowerCase()),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"ToWallet",controlType:"Select",extras:{walletAddress:e.toLowerCase()}})}))}),[Ae]),ke=l.useCallback((async e=>{if(j?.providerDetail.info.rdns===e.providerDetail.info.rdns){ae(O),ge(e);const t=await O.getSigner().getAddress();return pe(t.toLowerCase()),Ae(t.toLowerCase()),void d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"ToWallet",controlType:"Select",extras:{walletAddress:t.toLowerCase()}})}try{ge(e);const t=new K(e.provider),n=await Wt(a,t,!1);if(N(n))Se(n);else{ae(n);const e=await n.getSigner().getAddress();pe(e.toLowerCase()),Ae(e.toLowerCase()),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"ToWallet",controlType:"Select",extras:{walletAddress:e.toLowerCase()}})}}catch(e){console.error(e)}}),[be,O,Ae,Se]),Ce=l.useCallback((()=>{O&&M&&te&&ce&&(o({payload:{type:Ft.SET_TOKEN_BALANCES,tokenBalances:[]}}),o({payload:{type:Ft.SET_ALLOWED_TOKENS,allowedTokens:[]}}),o({payload:{type:Ft.SET_WALLETS_AND_NETWORKS,from:{web3Provider:O,walletAddress:F.toLowerCase(),walletProviderInfo:j?.providerDetail.info,network:M},to:{web3Provider:te,walletAddress:ue.toLowerCase(),walletProviderInfo:we?.providerDetail.info,network:ce}}}),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"Next",controlType:"Button",extras:{fromWalletAddress:F,fromNetwork:M,fromWallet:{address:F,rdns:j?.providerDetail.info.rdns,uuid:j?.providerDetail.info.uuid,isPassportWallet:z(O),isMetaMask:re(O)},toWalletAddress:ue,toNetwork:ce,toWallet:{address:ue,rdns:we?.providerDetail.info.rdns,uuid:we?.providerDetail.info.uuid,isPassportWallet:z(te),isMetaMask:re(te)},moveType:M&&M===ce?"transfer":"bridge"}}),r({payload:{type:_.UPDATE_VIEW,view:{type:je.BRIDGE_FORM}}}))}),[j,O,M,F,we,te,ce,ue]);return u(b,{testId:Pa,sx:ya,children:[t(se,{testId:`${Pa}-heading`,size:"small",weight:"regular",sx:Ia,children:e("views.WALLET_NETWORK_SELECTION.heading")}),t(se,{size:"xSmall",sx:{paddingBottom:"base.spacing.x2"},children:e("views.WALLET_NETWORK_SELECTION.fromFormInput.heading")}),t(Q,{testId:`${Pa}-from`,drawerText:{heading:e("views.WALLET_NETWORK_SELECTION.fromFormInput.walletSelectorHeading"),defaultText:e("views.WALLET_NETWORK_SELECTION.fromFormInput.selectDefaultText")},showWalletSelectorTarget:!he,showDrawer:D,setShowDrawer:P,walletOptions:ve,onWalletChange:Ee}),he&&be&&u(b,{sx:{display:"flex",flexDirection:"column",gap:"base.spacing.x10"},children:[t(Na,{testId:Pa,walletProviderDetail:j?.providerDetail,walletProvider:O,walletName:be,walletAddress:Ea(F),chainId:M,disableNetworkButton:be===ie.PASSPORT.toString(),onWalletClick:()=>{P(!0)},onNetworkClick:()=>W(!0),environment:c}),u(b,{children:[t(se,{size:"xSmall",sx:{paddingBottom:"base.spacing.x2"},children:e("views.WALLET_NETWORK_SELECTION.toFormInput.heading")}),t(Q,{testId:`${Pa}-to`,drawerText:{heading:e("views.WALLET_NETWORK_SELECTION.toFormInput.walletSelectorHeading"),defaultText:e("views.WALLET_NETWORK_SELECTION.toFormInput.selectDefaultText")},showWalletSelectorTarget:!fe,walletOptions:xe,showDrawer:Z,setShowDrawer:ee,onWalletChange:ke})]})]}),t(le,{headerBarTitle:e(L?"views.WALLET_NETWORK_SELECTION.fromFormInput.networkSelectorHeading":"views.WALLET_NETWORK_SELECTION.toFormInput.networkSelectorHeading"),size:"full",onCloseDrawer:()=>{L?W(!1):X(!1)},visible:L||Y,children:u(le.Content,{sx:{paddingX:"base.spacing.x4"},children:[t(Sa,{testId:Pa,chainName:R,onNetworkClick:L?ye:Ie,chainId:k,environment:c},R),(Y||j?.providerDetail.info.rdns!==H.PASSPORT)&&t(Sa,{testId:Pa,chainName:I,onNetworkClick:L?ye:Ie,chainId:y,environment:c},I)]})}),fe&&me&&u(b,{sx:{flex:1,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[t(Na,{testId:Pa,walletProviderDetail:we?.providerDetail,walletProvider:te,walletName:me,walletAddress:Ea(ue),chainId:ce,disableNetworkButton:M===y||me===ie.PASSPORT.toString()||F===ue,onWalletClick:()=>{ee(!0)},onNetworkClick:()=>{X(!0)},environment:c}),t(b,{sx:Aa,children:t(f,{testId:`${Pa}-submit-button`,size:"large",onClick:Ce,children:e("views.WALLET_NETWORK_SELECTION.submitButton.text")})})]})]})}function Wa(){const{t:e}=h(),{viewDispatch:a}=l.useContext(C),{eventTargetState:{eventTarget:n}}=l.useContext(F),{page:s}=A();return l.useEffect((()=>{s({userJourney:S.BRIDGE,screen:"WalletNetworkSelection"})}),[]),t(Y,{testId:"bridge-view",header:t(j,{title:e("views.WALLET_NETWORK_SELECTION.layoutHeading"),onCloseButtonClick:()=>$t(n),rightActions:t(ce,{icon:"Minting",sx:de(),onClick:()=>{a({payload:{type:_.UPDATE_VIEW,view:{type:je.TRANSACTIONS}}})},testId:"move-transactions-button"})}),footer:t(q,{}),children:t(La,{})})}function Oa(e,t){return e&&0!==parseFloat(e)?t&&Number(e)>Number(t)?"views.BRIDGE_FORM.validation.insufficientBalance":"":"views.BRIDGE_FORM.validation.noAmountInputted"}const Ba={height:"100%",display:"flex",flexDirection:"column",justifyContent:"space-between",paddingTop:"base.spacing.x10"},Ma={paddingTop:"base.spacing.x4",display:"flex",gap:"base.spacing.x1"},Ga={display:"flex",flexDirection:"column",paddingY:"base.spacing.x6",paddingX:"base.spacing.x4"};function Fa({sx:e}){return u(b,{sx:{...e,paddingTop:"0",marginTop:"base.spacing.x4"},rc:t("div",{}),children:[t(b,{sx:{display:"flex",backgroundColor:"#F3F3F30A",borderRadius:"8px"},children:t(b,{sx:{minw:"170px",height:"64px",WebkitMaskPosition:"left center",WebkitMaskRepeat:"no-repeat",WebkitMaskSize:"contain",WebkitMaskImage:'url(\'data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none"><path d="M154.75 39q1.65 0 2.85-1.15 1.15-1.15 1.15-2.85v-4q0-1.65-1.15-2.8-1.2-1.2-2.85-1.2h-93.6q-2.3 0-3.85 1.2-1.55 1.15-1.55 2.8v4q0 1.7 1.55 2.85Q58.85 39 61.15 39h93.6m-111.7-3.35q.2-1.3.2-2.65 0-1.35-.2-2.65-.75-4.9-4.5-8.65-4.7-4.7-11.3-4.7-6.65 0-11.3 4.7-4.7 4.7-4.7 11.3 0 6.65 4.7 11.3Q20.6 49 27.25 49q6.6 0 11.3-4.7 3.75-3.7 4.5-8.65Z" id="a"/></svg>\')'},rc:t("span",{}),children:t(p,{rc:t("span",{})})})}),t(b,{sx:{display:"flex",width:"100%",backgroundColor:"#F3F3F30A",borderRadius:"8px"},children:t(b,{sx:{width:"100%",height:"64px",WebkitMaskPosition:"right center",WebkitMaskRepeat:"no-repeat",WebkitMaskSize:"contain",WebkitMaskImage:'url(\'data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="196" height="96"><path d="M182.85 55.2Q181.65 54 180 54h-56q-1.7 0-2.85 1.2Q120 56.35 120 58v4q0 1.7 1.15 2.85Q122.3 66 124 66h56q1.65 0 2.85-1.15Q184 63.7 184 62v-4q0-1.65-1.15-2.8m0-22Q181.65 32 180 32H68q-1.7 0-2.85 1.2Q64 34.35 64 36v8q0 1.7 1.15 2.85Q66.3 48 68 48h112q1.65 0 2.85-1.15Q184 45.7 184 44v-8q0-1.65-1.15-2.8Z" id="a"/></svg>\')'},rc:t("span",{}),children:t(p,{rc:t("span",{})})})})]})}function za(e){const{t:a}=h(),{bridgeDispatch:n,bridgeState:{tokenBalances:s,allowedTokens:o,checkout:r,from:i,to:c,amount:d,token:p}}=l.useContext(zt),{cryptoFiatState:w,cryptoFiatDispatch:g}=l.useContext(qe),{viewDispatch:m}=l.useContext(C),{testId:v,defaultAmount:x,defaultTokenAddress:T,isTokenBalancesLoading:E,defaultTokenImage:y,environment:I,theme:k}=e,{track:R}=A(),[D,N]=l.useState(x||""),[P,L]=l.useState(""),[W,B]=l.useState(),[M,F]=l.useState(""),[z,U]=l.useState(""),[V,$]=l.useState(!1),H=l.useRef(!1),K=W?`${a("views.BRIDGE_FORM.content.availableBalancePrefix")} ${ue(W?.formattedBalance)}`:"",[J,j]=l.useState([]),[q,Q]=l.useState(!1),Y=l.useCallback(((e,t)=>t?`${e.toLowerCase()}-${t.toLowerCase()}`:e.toLowerCase()),[]);l.useEffect((()=>{if(0===s.length)return;const e=s.filter((e=>e.balance.gt(0))).map((e=>({id:Y(e.token.symbol,e.token.address),name:e.token.name,symbol:e.token.symbol,icon:e.token.icon,balance:{formattedFiatAmount:0===w.conversions.size?pe(""):G(e.formattedBalance,e.token.symbol,w.conversions),formattedAmount:ue(e.formattedBalance)}})));j(e),H.current||(H.current=!0,T&&B(s.find((e=>O(e.token.address)&&T?.toLocaleUpperCase()===we||e.token.address?.toLowerCase()===T?.toLowerCase()))))}),[s,w.conversions,T,H.current,Y,pe]),l.useEffect((()=>{if(d&&p){N(d);for(let e=0;e<s.length;e++){const t=s[e];if(t.token.address===p.address){B(t);break}}n({payload:{type:Ft.SET_TOKEN_AND_AMOUNT,token:null,amount:""}})}}),[d,p,s]);const X=l.useMemo((()=>W&&W.token?Y(W.token.symbol,W.token.address):void 0),[W,s,w.conversions,Y]),Z=e=>{if(N(e),P){const t=Oa(e,W?.formattedBalance);L(t)}var t;W&&(U(G(e,W.token.symbol,w.conversions)),t=!0,Number.isNaN(parseFloat(D))||parseFloat(D)<=0||!W||!i||!i.walletAddress||!c||!c.walletAddress||t&&V||!r||$(!0))};l.useEffect((()=>{g({payload:{type:Ye.SET_TOKEN_SYMBOLS,tokenSymbols:o.map((e=>e.symbol))}})}),[g,o]),l.useEffect((()=>{D&&W&&U(G(D,W.token.symbol,w.conversions))}),[D,W]);const ee=l.useCallback((()=>{const e=W?"":"views.BRIDGE_FORM.validation.noTokenSelected";const t=Oa(D,W?.formattedBalance);return e&&F(e),t&&L(t),!e&&!t}),[W,D,F,L]),te=l.useCallback((async()=>{ee()&&r&&i?.web3Provider&&W&&(R({userJourney:S.BRIDGE,screen:"TokenAmount",control:"Review",controlType:"Button",extras:{tokenAddress:W.token.address,amount:D}}),n({payload:{type:Ft.SET_TOKEN_AND_AMOUNT,token:W.token,amount:D}}),m({payload:{type:_.UPDATE_VIEW,view:{type:je.BRIDGE_REVIEW}}}))}),[r,i?.web3Provider,ee,W]);return u(b,{testId:v,sx:Ba,children:[u(b,{sx:{paddingX:"base.spacing.x4"},children:[t(se,{testId:`${v}-content-heading`,size:"small",weight:"regular",sx:{paddingBottom:"base.spacing.x4"},children:a("views.BRIDGE_FORM.content.title")}),(!T||!E)&&u(b,{sx:Ma,children:[t(ot,{testId:"bridge-token",options:J,optionsLoading:E,coinSelectorHeading:a("views.BRIDGE_FORM.bridgeForm.from.selectorTitle"),selectedOption:X,subtext:K,textAlign:"left",errorMessage:a(M),onSelectChange:e=>(e=>{const t=s.find((t=>e===Y(t.token.symbol,t.token.address)));t&&(B(t),F(""))})(e),defaultTokenImage:y,environment:I,theme:k}),t(rt,{testId:"bridge-amount",type:"number",value:D,placeholder:a("views.BRIDGE_FORM.bridgeForm.from.inputPlaceholder"),subtext:`${a("views.BRIDGE_FORM.content.fiatPricePrefix")} $${pe(z,!0)}`,validator:ge,onTextInputChange:e=>Z(e),onTextInputEnter:te,textAlign:"right",inputMode:"decimal",errorMessage:a(P)})]}),T&&E&&t(Fa,{sx:Ma})]}),u(b,{sx:Ga,children:[t(f,{testId:`${v}-button`,variant:"primary",onClick:te,size:"large",children:a("views.BRIDGE_FORM.bridgeForm.buttonText")}),t(it,{visible:q,showHeaderBar:!1,onCloseDrawer:()=>Q(!1),onRetry:async()=>{Q(!1),await te()}})]})]})}const Ua=1e4;function Va({amount:e,tokenAddress:a,defaultTokenImage:n,theme:s}){const{t:o}=h(),{bridgeState:r,bridgeDispatch:i}=l.useContext(zt),{checkout:c,from:d}=r,{eventTargetState:{eventTarget:u}}=l.useContext(F),[p,w]=l.useState(!1),{page:g}=A();l.useEffect((()=>{(e||a)&&g({userJourney:S.BRIDGE,screen:"TokenAmount",extras:{amount:e,tokenAddress:a}})}),[]);const f=l.useCallback((async()=>{if(c&&d?.web3Provider)try{const e=await lt({checkout:c,provider:d.web3Provider,chainId:d?.network,allowTokenListType:V.BRIDGE,retryPolicy:{retryIntervalMs:0,retries:0}});if(void 0===e)return;i({payload:{type:Ft.SET_TOKEN_BALANCES,tokenBalances:e.allowedBalances}}),i({payload:{type:Ft.SET_ALLOWED_TOKENS,allowedTokens:e.allowList.tokens}})}catch(e){console.debug(e)}}),[c,d?.web3Provider,d?.network]);return nt(f,Ua),l.useEffect((()=>{c&&d?.web3Provider&&(w(!0),f().finally((()=>w(!1))))}),[c,d?.web3Provider]),t(Y,{testId:"bridge-view",header:t(j,{showBack:!0,title:o("views.BRIDGE_FORM.header.title"),onCloseButtonClick:()=>$t(u)}),footer:t(q,{}),children:t(za,{testId:"bridge-form",defaultAmount:e,defaultTokenAddress:a,isTokenBalancesLoading:p,defaultTokenImage:n,environment:c?.config.environment,theme:s})})}const $a={display:"flex",flexDirection:"column",alignItems:"center",paddingBottom:"base.spacing.x6",height:"100%",paddingX:"base.spacing.x6"},Ha={fontFamily:"base.font.family.heading.secondary",textAlign:"center",marginTop:"15px",paddingX:"base.spacing.x6"},Ka={...Ha,color:"base.color.text.body.secondary"},Ja={display:"flex",flexDirection:"column",justifyContent:"flex-end",gap:"base.spacing.x2",height:"100%",width:"100%"},ja={width:"100%",height:"base.spacing.x16"};function qa({environment:e,onCloseDrawer:a,visible:n,walletAddress:o,tokenSymbol:r,onAddCoinsClick:i}){const{t:c}=h(),[d,p]=l.useState(!1),w=he(e,"/notenougheth.svg"),g=he(e,"/notenoughimx.svg"),m=c("drawers.notEnoughGas.content.heading",{token:r.toUpperCase()}),v=c("drawers.notEnoughGas.content.body",{token:r.toUpperCase()}),x=l.useCallback((()=>{o&&""!==o&&navigator.clipboard.writeText(o),p(!0),setTimeout((()=>{p(!1)}),3e3)}),[o]);return t(le,{size:"threeQuarter",visible:n,showHeaderBar:!0,headerBarTitle:void 0,onCloseDrawer:a,children:u(le.Content,{testId:"not-enough-gas-bottom-sheet",sx:$a,children:[t(fe,{sx:{w:"90px",h:r===be?"110px":"90px"},use:t("img",{src:r===be?w:g,alt:m})}),t(se,{size:"small",weight:"bold",sx:Ha,testId:"not-enough-gas-heading",children:m}),t(s,{sx:Ka,children:v}),t(b,{sx:Ja,children:r===be?u(f,{testId:"not-enough-gas-copy-address-button",sx:ja,variant:"primary",onClick:x,children:[c("drawers.notEnoughGas.buttons.copyAddress"),t(f.Icon,{icon:d?"Tick":"CopyText"})]}):t(f,{testId:"not-enough-gas-add-imx-button",sx:ja,variant:"primary",onClick:i,children:c("drawers.notEnoughGas.buttons.addMoreImx")})})]})})}const Qa={borderBottomLeftRadius:"0px",borderBottomRightRadius:"0px",marginBottom:"2px",position:"relative"},Ya={borderTopLeftRadius:"0px",borderTopRightRadius:"0px",backgroundColor:"base.color.translucent.emphasis.100",position:"relative"},Xa={width:"base.icon.size.400"},Za={position:"absolute",top:"2px",left:"26px",width:"20px",padding:"2px",backgroundColor:"base.color.translucent.inverse.900",borderRadius:"base.borderRadius.x2"},en={height:"100%",display:"flex",flexDirection:"column",paddingX:"base.spacing.x4"},tn={paddingTop:"base.spacing.x10",paddingBottom:"base.spacing.x4"},an={display:"flex",flexDirection:"column",alignItems:"center",paddingY:"base.spacing.x1"},nn={width:"base.icon.size.300",transform:"rotate(270deg)"},sn={width:"base.icon.size.400"},on={backgroundColor:"base.color.translucent.standard.200",position:"absolute",width:"32px",height:"32px",padding:"6px",left:"base.spacing.x3"},rn={position:"absolute",right:"base.spacing.x3",w:"base.icon.size.400",h:"base.icon.size.400"},ln=(e,t,a,n)=>{const s=[];if(!e?.fees||!e.token)return s;let o=me.from(0);if(e.fees.bridgeFee&&(o=o.add(e.fees.bridgeFee)),e.fees.imtblFee&&(o=o.add(e.fees.imtblFee)),o.gt(0)&&s.push({label:n(t?"drawers.feesBreakdown.fees.serviceFee.depositLabel":"drawers.feesBreakdown.fees.serviceFee.withdrawLabel"),fiatAmount:`≈ ${n("drawers.feesBreakdown.fees.fiatPricePrefix")}${G(Qe(o,e.token.decimals),e.token.symbol,a.conversions)}`,amount:ue(Qe(o,e.token.decimals)),token:e.token}),e.fees.sourceChainGas?.gt(0)){const t=Qe(e.fees.sourceChainGas,e.token.decimals);s.push({label:n("drawers.feesBreakdown.fees.gasFeeMove.label"),fiatAmount:`≈ ${n("drawers.feesBreakdown.fees.fiatPricePrefix")}${G(t,e.token.symbol,a.conversions)}`,amount:`${ue(t)}`,prefix:"≈ ",token:e.token})}if(e.fees.approvalFee?.gt(0)){const t=Qe(e.fees.approvalFee,e.token.decimals);s.push({label:n("drawers.feesBreakdown.fees.approvalFee.label"),fiatAmount:`≈ ${n("drawers.feesBreakdown.fees.fiatPricePrefix")}${G(t,e.token.symbol,a.conversions)}`,amount:`${ue(t)}`,prefix:"≈ ",token:e.token})}return s},cn=(e,t)=>new ve(e,["function transfer(address to, uint amount)"],t),dn="bridge-review-summary";function un(){const{t:e}=h(),{viewDispatch:a}=l.useContext(C),{bridgeState:{checkout:n,tokenBridge:o,from:r,to:i,token:c,amount:d,tokenBalances:p},bridgeDispatch:g}=l.useContext(zt),{environment:m}=n.config,{track:v}=A(),{cryptoFiatState:x}=l.useContext(qe),[y,k]=l.useState(!1),[W,B]=l.useState(void 0),[M,F]=l.useState(""),[V,H]=l.useState(""),[J,j]=l.useState(void 0),[q,Q]=l.useState(void 0),[Y,X]=l.useState(!1),[Z,ee]=l.useState(void 0),[te,ae]=l.useState(void 0),[ne,oe]=l.useState(!1),[ie,le]=l.useState(!1),{isWalletConnectEnabled:ce,getWalletLogoUrl:de}=D(),[ue,pe]=l.useState(!1),ge=l.useMemo((()=>r?.network===i?.network),[r,i]),he=l.useMemo((()=>$(n.config)===i?.network),[r,i,n]),fe=l.useMemo((()=>{if(!W)return!1;if(!c)return!0;const e=p.find((e=>O(e.token.address)));let t=me.from(W.fees.totalFees);return O(c.address)&&(t=t.add(Xe(d,c.decimals))),!e||e.balance.lt(t)}),[p,W,c,d]),ve=l.useMemo((()=>c?.symbol?`${c?.symbol} ${d}`:`${d}`),[c,d]),ke=l.useMemo((()=>d&&c?G(d,c.symbol,x.conversions):""),[c,d]),Ce=l.useMemo((()=>r?r.walletAddress:"-"),[r]),Re=l.useMemo((()=>r&&r.network),[r]),_e=l.useMemo((()=>i?i.walletAddress:"-"),[i]),De=l.useMemo((()=>i?.network),[i]),Ne=l.useCallback((async()=>{if(!(o&&d&&r&&i&&c))return;const e=c?.address?.toLowerCase()??we.toUpperCase(),t={gasEstimateType:xe.BRIDGE_TO_L2,fees:{},token:n.config.networkMap.get(r.network)?.nativeCurrency};let a;if(e===we.toLowerCase())a=n.providerCall(r.web3Provider,(async e=>await e.estimateGas({to:_e,from:Ce,value:Xe(d,c.decimals)})));else{a=cn(e,r.web3Provider.getSigner()).estimateGas.transfer(_e,Xe(d,c.decimals))}try{const[e,n]=await Promise.all([a,r.web3Provider.getGasPrice()]),s=e.mul(n),o=Qe(s,Te);t.fees.sourceChainGas=s,t.fees.totalFees=s,B(t),F(o),H(G(o,we.toUpperCase(),x.conversions))}catch(e){console.error("Unable to fetch gas estimate",e)}}),[n,r,i,c,d]),Pe=l.useCallback((async()=>{if(!(o&&d&&r&&i&&c))return;const e=await o.getUnsignedBridgeBundledTx({senderAddress:Ce,recipientAddress:_e,token:c.address??we.toUpperCase(),amount:Xe(d,c.decimals),sourceChainId:r?.network.toString(),destinationChainId:i?.network.toString(),gasMultiplier:"auto"}),t={contractToApprove:e.contractToApprove,unsignedTx:e.unsignedApprovalTx},a={feeData:e.feeData,unsignedTx:e.unsignedBridgeTx};j(t),Q(a);const s=a.feeData,{totalFees:l,approvalFee:u}=s;let p=l;t.unsignedTx||(p=l.sub(u),s.approvalFee=me.from(0));const w={gasEstimateType:xe.BRIDGE_TO_L2,fees:{...s,totalFees:p},token:n.config.networkMap.get(r.network)?.nativeCurrency};B(w);const g=Qe(w?.fees.totalFees||0,Te);F(g),H(G(g,w?.token?.symbol||"",x.conversions))}),[n,o]);nt((()=>{ge?Ne():Pe()}),Ee);const Le=l.useCallback((()=>ln(W,he,x,e)),[W,he]);l.useEffect((()=>{(async()=>{k(!0),ge?await Ne():await Pe(),k(!1)})()}),[]);const We=l.useCallback((e=>{g({payload:{type:Ft.SET_WALLETS_AND_NETWORKS,from:{web3Provider:e,walletAddress:r?.walletAddress,walletProviderInfo:r?.walletProviderInfo,network:r?.network},to:{web3Provider:i?.web3Provider,walletAddress:i?.walletAddress,walletProviderInfo:i?.walletProviderInfo,network:i?.network}}})}),[r?.web3Provider,r?.network,i?.web3Provider,i?.network]);l.useEffect((()=>{if(!r?.web3Provider)return;const e=()=>{const e=new K(r?.web3Provider.provider);We(e),X(!1)};return ye(r?.web3Provider,e),()=>{Ie(r?.web3Provider,e)}}),[r?.web3Provider]),l.useEffect((()=>{if(ce){const e=N(r?.web3Provider),t=N(i?.web3Provider);oe(e),le(t),(async()=>{e&&ee(await de()),t&&ae(await de())})()}}),[ce,r?.web3Provider,i?.web3Provider]),l.useEffect((()=>{fe&&pe(!0)}),[fe]);const Oe=l.useCallback((async()=>{if(ge||J&&q)if(fe)pe(!0);else{try{const e=await(r?.web3Provider.provider).request({method:"eth_chainId",params:[]});if(parseInt(e.toString())!==r?.network)return void X(!0)}catch(e){console.error("Current network check failed",e)}v({userJourney:S.BRIDGE,screen:"Summary",control:"Submit",controlType:"Button",extras:{fromWalletAddress:Ce,fromNetwork:Re,fromWallet:{address:Ce,rdns:r?.walletProviderInfo?.rdns,uuid:r?.walletProviderInfo?.uuid,isPassportWallet:z(r?.web3Provider),isMetaMask:re(r?.web3Provider)},toWalletAddress:_e,toNetwork:De,toWallet:{address:_e,rdns:i?.walletProviderInfo?.rdns,uuid:i?.walletProviderInfo?.uuid,isPassportWallet:z(i?.web3Provider),isMetaMask:re(i?.web3Provider)},amount:d,fiatAmount:ke,tokenAddress:c?.address,moveType:ge?"transfer":"bridge"}}),a({payload:{type:_.UPDATE_VIEW,view:{type:je.APPROVE_TRANSACTION,approveTransaction:J,transaction:q}}})}}),[a,J,q,r?.web3Provider,r?.network,r?.walletProviderInfo,i?.web3Provider,i?.network,i?.walletProviderInfo]);return u(b,{testId:dn,sx:en,children:[t(se,{testId:`${dn}-heading`,size:"small",weight:"regular",sx:tn,children:e("views.BRIDGE_REVIEW.heading")}),u(w,{testId:`${dn}-from-amount`,size:"small",emphasized:!0,sx:Qa,children:[t(w.Label,{size:"small",sx:{marginBottom:"base.spacing.x4",fontWeight:"bold"},children:e("views.BRIDGE_REVIEW.fromLabel.amountHeading")}),t(w.Caption,{}),t(w.PriceDisplay,{use:t(se,{size:"xSmall",weight:"light"}),price:ve??"-",fiatAmount:`${e("views.BRIDGE_REVIEW.fiatPricePrefix")}${ke}`})]}),u(w,{testId:`${dn}-from-address`,size:"xSmall",emphasized:!0,sx:Ya,children:[ne&&Z?u(R,{children:[t(w.FramedImage,{imageUrl:Z,alt:"walletconnect",sx:Xa}),t(P,{logo:"WalletConnectSymbol",sx:Za})]}):r?.walletProviderInfo&&t(L,{src:r?.walletProviderInfo.icon,alt:r?.walletProviderInfo.name,sx:on}),u(w.Label,{sx:{marginLeft:ne&&Z?"0px":"45px"},children:[t("strong",{children:e("views.BRIDGE_REVIEW.fromLabel.heading")})," ",t(s,{size:"small",sx:{color:"base.color.text.body.secondary"},children:Ea(Ce??"")})]}),Re&&t(w.FramedImage,{use:t("img",{src:T(m,Re),alt:E[Re]}),sx:rn})]}),t(b,{sx:an,children:t(I,{icon:"ArrowBackward",sx:nn})}),u(w,{testId:`${dn}-to-address`,size:"xSmall",emphasized:!0,sx:Qa,children:[ie&&te?u(R,{children:[t(w.FramedImage,{imageUrl:te,alt:"walletconnect",sx:Xa}),t(P,{logo:"WalletConnectSymbol",sx:Za})]}):i?.walletProviderInfo&&t(L,{src:i?.walletProviderInfo.icon,alt:i?.walletProviderInfo.name,sx:on}),u(w.Label,{sx:{marginLeft:ie&&te?"0px":"45px"},children:[t("strong",{children:e("views.BRIDGE_REVIEW.toLabel.heading")})," ",t(s,{size:"small",sx:{color:"base.color.text.body.secondary"},children:Ea(_e??"")})]}),De&&t(w.FramedImage,{use:t("img",{src:T(m,De),alt:E[De]}),sx:rn})]}),t(ct,{gasFeeValue:M,gasFeeFiatValue:V,gasFeeToken:W?.token,fees:Le(),onFeesClick:()=>{v({userJourney:S.BRIDGE,screen:"MoveCoins",control:"ViewFees",controlType:"Button"})},sx:{borderTopRightRadius:"0",borderTopLeftRadius:"0"},loading:y}),t(b,{sx:{flex:1,display:"flex",flexDirection:"column",justifyContent:"flex-end",paddingY:"base.spacing.x6",width:"100%"},children:W&&!y&&t(f,{size:"large",sx:{width:"100%"},onClick:Oe,disabled:y,testId:`${dn}__submit-button`,children:y?t(f.Icon,{icon:"Loading",sx:sn}):e("views.BRIDGE_REVIEW.submitButton.buttonText")})}),t(dt,{visible:Y,targetChainId:r?.network,provider:r?.web3Provider,checkout:n,onCloseDrawer:()=>X(!1),onNetworkSwitch:We}),t(qa,{environment:n.config.environment,visible:ue,onCloseDrawer:()=>pe(!1),walletAddress:r?.walletAddress||"",tokenSymbol:r?.network===U(n?.config)?be:Ae,onAddCoinsClick:()=>{a({payload:{type:_.UPDATE_VIEW,view:{type:Se.TOP_UP_VIEW}}})}})]})}function pn(){const{t:e}=h(),{eventTargetState:{eventTarget:a}}=l.useContext(F),{page:n}=A();return l.useEffect((()=>{n({userJourney:S.BRIDGE,screen:"Review"})}),[]),t(Y,{testId:"bridge-review",header:t(j,{showBack:!0,title:e("views.BRIDGE_REVIEW.layoutHeading"),onCloseButtonClick:()=>$t(a)}),footer:t(q,{}),children:t(un,{})})}function wn({environment:e}){const{RiveComponent:a}=ke.useRive({src:`${Ce[e]}/v1/blob/img/rocket.riv`,autoplay:!0,layout:new ke.Layout({fit:ke.Fit.Cover}),stateMachines:"State Machine 1"});return t(b,{sx:{...Re,background:"base.color.translucent.emphasis.100"},children:t(b,{sx:_e,rc:t(a,{})})})}function gn({transactionHash:e,isTransfer:a}){const{t:n}=h(),{eventTargetState:{eventTarget:s}}=l.useContext(F),{page:o}=A(),{cryptoFiatState:r}=l.useContext(qe),{viewDispatch:i}=l.useContext(C),{bridgeState:{checkout:c,from:d,to:p,token:w,amount:g}}=l.useContext(zt);return l.useEffect((()=>{Vt(s,e);const t=G(g,w?.symbol??"",r.conversions);o({userJourney:S.BRIDGE,screen:"InProgress",extras:{fromWalletAddress:d?.walletAddress,toWalletAddress:p?.walletAddress,amount:g,fiatAmount:t,tokenAddress:w?.address,moveType:a?"transfer":"bridge"}})}),[]),t(Y,{testId:"move-in-progress-view",header:t(j,{transparent:!0,onCloseButtonClick:()=>$t(s),rightActions:u(R,{children:[t(ce,{icon:"Minting",sx:de(),onClick:()=>{i({payload:{type:_.UPDATE_VIEW,view:{type:je.TRANSACTIONS}}})},testId:"settings-button"}),!a&&t(De,{isAnimated:!0,variant:"guidance",sx:{position:"absolute",right:"base.spacing.x14",top:"base.spacing.x1"}})]})}),footer:t(q,{}),heroContent:t(wn,{environment:c.config.environment}),floatHeader:!0,children:u(Ne,{heading:n(a?"views.IN_PROGRESS.transferHeading":"views.IN_PROGRESS.heading"),children:[!a&&u(R,{children:[n("views.IN_PROGRESS.body1"),t("br",{}),t("br",{})]}),n("views.IN_PROGRESS.body2")]})})}function hn({bridgeTransaction:e}){const{t:a}=h(),{bridgeState:n}=l.useContext(zt),{checkout:s,from:o,to:i,token:c,amount:d}=n,{viewDispatch:p}=l.useContext(C),{eventTargetState:{eventTarget:w}}=l.useContext(F),{page:g}=A();l.useEffect((()=>{g({userJourney:S.BRIDGE,screen:"ApproveTransaction",extras:{moveType:e?"bridge":"transfer"}})}),[]);const[f,m]=l.useState(!1),[v,x]=l.useState(!1),[T,E]=l.useState(!1),[y,I]=l.useState(!1),k=l.useCallback((()=>{p({payload:{type:_.UPDATE_VIEW,view:{type:Se.ERROR_VIEW,error:new Error("No checkout object or no provider object found")}}})}),[p]),D=l.useCallback((()=>{p({payload:{type:_.GO_BACK}})}),[p]),N=e=>{if(e.type!==r.UNPREDICTABLE_GAS_LIMIT){if(e.type===r.TRANSACTION_FAILED||e.type===r.INSUFFICIENT_FUNDS||e.receipt&&0===e.receipt.status){let t="Transaction failed";return e.type===r.INSUFFICIENT_FUNDS&&(t="Insufficient funds"),e.receipt&&0===e.receipt.status&&(t="Transaction failed to settle on chain"),void p({payload:{type:_.UPDATE_VIEW,view:{type:je.BRIDGE_FAILURE,reason:t}}})}p({payload:{type:_.UPDATE_VIEW,view:{type:Se.ERROR_VIEW,error:e}}})}else p({payload:{type:_.UPDATE_VIEW,view:{type:je.BRIDGE_FAILURE,reason:"Unpredictable gas limit"}}})},P=l.useCallback((async()=>{if(!s||!o?.web3Provider)return void k();if(f)return;m(!0),x(!0);const e=c?.address?.toLowerCase()??we.toUpperCase();let t;try{if(e===we.toLowerCase()){const e={to:i?.walletAddress,value:Xe(d,c?.decimals)};t=(await s.sendTransaction({provider:o.web3Provider,transaction:e})).transactionResponse.hash}else{const a=cn(e,o.web3Provider.getSigner()),n=Xe(d,c?.decimals);t=(await s.providerCall(o.web3Provider,(async()=>await a.transfer(i?.walletAddress,n)))).hash}p({payload:{type:_.UPDATE_VIEW,view:{type:je.IN_PROGRESS,transactionHash:t,isTransfer:!0}}})}catch(e){x(!1),e.type===r.USER_REJECTED_REQUEST_ERROR?I(!0):N(e)}finally{m(!1)}}),[s,o,k,p,f]),L=l.useCallback((async()=>{let t=!1;const{approveTransaction:a,transaction:n}=e;if(s&&o?.web3Provider&&n){if(!f){if(m(!0),a.unsignedTx)try{x(!0);const e=await s.sendTransaction({provider:o.web3Provider,transaction:a.unsignedTx});if(1!==(await e.transactionResponse.wait()).status)return void p({payload:{type:_.UPDATE_VIEW,view:{type:je.BRIDGE_FAILURE,reason:"Transaction failed to settle on chain"}}})}catch(e){x(!1),e.type===r.USER_REJECTED_REQUEST_ERROR?(I(!0),t=!0):N(e)}finally{m(!1)}try{if(t)return;x(!0);const e=await s.sendTransaction({provider:o.web3Provider,transaction:n.unsignedTx});p({payload:{type:_.UPDATE_VIEW,view:{type:je.IN_PROGRESS,transactionHash:e.transactionResponse.hash,isTransfer:!1}}});0===(await e.transactionResponse.wait()).status&&p({payload:{type:_.UPDATE_VIEW,view:{type:je.BRIDGE_FAILURE,reason:"Approval transaction failed to settle on chain"}}})}catch(e){e.type===r.USER_REJECTED_REQUEST_ERROR?I(!0):N(e)}finally{E(!1),x(!1),m(!1)}}}else k()}),[s,o,k,p,e,f]);return u(R,{children:[T&&t(te,{loadingText:a("views.APPROVE_TRANSACTION.loadingView.text")}),!T&&t(Y,{header:t(j,{transparent:!0,showBack:!0,onCloseButtonClick:()=>$t(w),onBackButtonClick:D}),floatHeader:!0,heroContent:t(ut,{}),footer:u(b,{sx:{width:"100%",flexDirection:"column"},children:[t(Pe,{loading:v,actionText:a("views.APPROVE_TRANSACTION."+(y?"footer.retryText":"footer.buttonText")),onActionClick:e?L:P}),t(q,{})]}),children:t(Ne,{heading:a("views.APPROVE_TRANSACTION.content.heading"),children:t(b,{children:a("views.APPROVE_TRANSACTION.content.body")})})})]})}const fn={display:"flex",flexDirection:"column",alignItems:"center",paddingTop:"base.spacing.x6",paddingBottom:"base.spacing.x1",height:"100%"},bn={color:"base.color.text.body.secondary",fontFamily:"base.font.family.heading.secondary",textAlign:"center",marginTop:"15px"},mn={display:"flex",flexDirection:"column",justifyContent:"center",gap:"base.spacing.x2",height:"100%",width:"100%"},vn={width:"100%",height:"base.spacing.x16"};function xn({visible:e,onClose:a,onChangeAccount:n}){const{t:o}=h(),{bridgeState:{checkout:r}}=l.useContext(zt),i=Le(r.config.environment);return t(le,{headerBarTitle:void 0,size:"full",onCloseDrawer:a,visible:e,showHeaderBar:!1,children:t(le.Content,{children:u(b,{testId:"not-enough-eth-drawer",sx:fn,children:[t(fe,{sx:{w:"base.icon.size.600",h:"base.icon.size.600"},use:t("img",{src:i,alt:"ETH"})}),t(se,{size:"small",sx:bn,testId:"not-enough-gas-heading",children:`${o("drawers.notEnoughEthWithdrawal.content.heading1")} ${be} ${o("drawers.notEnoughEthWithdrawal.content.heading2")}`}),t(s,{sx:bn,children:`${o("drawers.notEnoughEthWithdrawal.content.body1")} ${be} ${o("drawers.notEnoughEthWithdrawal.content.body2")}`}),u(b,{sx:mn,children:[t(f,{testId:"not-enough-eth-drawer-retry-button",sx:vn,variant:"tertiary",onClick:n,children:o("drawers.notEnoughEthWithdrawal.buttons.retry")}),t(f,{sx:vn,variant:"tertiary",onClick:a,testId:"not-enough-eth-drawer-dismiss-button",children:o("drawers.notEnoughEthWithdrawal.buttons.dismiss")})]})]})})})}function Tn({transaction:e}){const{t:a}=h(),{bridgeState:{checkout:n,tokenBridge:s,from:o}}=l.useContext(zt),{viewDispatch:r}=l.useContext(C),{eventTargetState:{eventTarget:i}}=l.useContext(F),{page:c}=A();l.useEffect((()=>{c({userJourney:S.BRIDGE,screen:"ClaimWithdrawal"})}),[]);const[d,p]=l.useState(!1),[w,g]=l.useState(!1),[m,v]=l.useState(!1),[x,T]=l.useState(),[E,y]=l.useState(!1),I=l.useCallback((()=>{r({payload:{type:_.GO_BACK}})}),[r]);l.useEffect((()=>{(async()=>{if(s&&e&&void 0!==e.details.current_status?.index){g(!0);try{const t=await(s?.getFlowRateWithdrawTx({recipient:e.details.to_address,index:e.details.current_status.index}));T(t)}catch(e){console.log(e)}finally{g(!1)}}})()}),[s,e]);const k=l.useCallback((async({forceChangeAccount:e})=>{if(!(n&&s&&o?.web3Provider&&x))return;if(!x.pendingWithdrawal.canWithdraw||!x.unsignedTx)return void console.log(`Unable to process withdrawal transaction as it is not ready yet. Delay timeout at ${x.pendingWithdrawal.timeoutEnd} `);let t=o?.web3Provider;const a=U(n.config);if(p(!0),z(o?.web3Provider)||e)try{const e=await n.createProvider({walletProviderName:ie.METAMASK});t=(await n.connect({provider:e.provider,requestWalletPermissions:!0})).provider,y(!1)}catch(e){return console.log(e),v(!0),void p(!1)}let i,l=null;try{try{i=await t.estimateGas(x.unsignedTx)}catch(e){i=me.from(We)}let e=null;try{e=await t.getFeeData()}catch(e){console.log(e)}let a=null;e&&e.lastBaseFeePerGas&&e.maxPriorityFeePerGas?a=e.lastBaseFeePerGas.add(e.maxPriorityFeePerGas):e&&e.gasPrice&&(a=e.gasPrice),a&&(l=i.mul(a))}catch(e){console.log(e)}try{const e=(await n.getAllBalances({provider:t,chainId:a})).balances.find((e=>O(e.token.address)));if(!e||e.balance.lt(l))return y(!0),void p(!1)}catch(e){console.log(e)}if((await t.getNetwork()).chainId!==a)try{t=(await n.switchNetwork({provider:t,chainId:a})).provider}catch(e){return v(!0),g(!1),void console.log(e)}try{const e=await n.sendTransaction({provider:t,transaction:x.unsignedTx});r({payload:{type:_.UPDATE_VIEW,view:{type:je.CLAIM_WITHDRAWAL_IN_PROGRESS,transactionResponse:e.transactionResponse}}})}catch(e){console.log(e),v(!0),p(!1)}finally{p(!1)}}),[s,o,x]);return u(Y,{testId:"claim-withdrawal",header:t(j,{transparent:!0,showBack:!0,onCloseButtonClick:()=>$t(i),onBackButtonClick:I}),floatHeader:!0,heroContent:t(ut,{}),footer:u(b,{sx:{width:"100%",display:"flex",flexDirection:"column"},children:[t(b,{sx:{pb:"base.spacing.x5",px:"base.spacing.x6",width:"100%",display:"flex",flexDirection:"column"},children:t(f,{testId:"claim-withdrawal-continue-button",size:"large",variant:"primary",disabled:w,onClick:()=>d||w?void 0:k({forceChangeAccount:!0}),children:w||d?t(f.Icon,{icon:"Loading",sx:{width:"base.icon.size.400"}}):a("views.CLAIM_WITHDRAWAL."+(m?"footer.retryText":"footer.buttonText"))})}),t(q,{})]}),children:[u(Ne,{heading:`${a("views.CLAIM_WITHDRAWAL.content.heading")} ${ne(U(n.config))}`,children:[t(b,{sx:{display:"flex",flexWrap:"wrap",pb:"base.spacing.x1"},children:a("views.CLAIM_WITHDRAWAL.content.body")}),u(b,{children:[a("views.CLAIM_WITHDRAWAL.content.body2"),t(Lt,{text:e.details.to_address.toLowerCase()??""})]})]}),t(xn,{visible:E,onClose:()=>y(!1),onChangeAccount:()=>k({forceChangeAccount:!0})})]})}function En({checkout:e,web3Provider:a,config:n,amount:s,tokenAddress:o}){const{t:r}=h(),{environment:i,isOnRampEnabled:p,isSwapEnabled:w,isBridgeEnabled:g,theme:f}=n,b=Oe(e.config.environment,f),{eventTargetState:{eventTarget:m}}=l.useContext(F),{page:v}=A(),[x,T]=l.useReducer(Be,{...Me,view:{type:je.WALLET_NETWORK_SELECTION},history:[{type:je.WALLET_NETWORK_SELECTION}]}),[E,y]=l.useReducer(Ut,{...Gt,checkout:e,web3Provider:a??null,tokenBridge:(()=>{let t=He;e.config.isDevelopment&&(t=Ke),e.config.isProduction&&(t=Je);const a=new Z(e.config.networkMap.get(U(e.config))?.rpcUrls[0]),n=new Z(e.config.networkMap.get($(e.config))?.rpcUrls[0]),s=new Ge({baseConfig:new Fe({environment:e.config.environment}),bridgeInstance:t,rootProvider:a,childProvider:n});return new ze(s)})()}),I=l.useMemo((()=>({viewState:x,viewDispatch:T})),[x,T]),k=l.useMemo((()=>({bridgeState:E,bridgeDispatch:y})),[E,y]),R=l.useCallback((()=>{y({payload:{type:Ft.SET_WALLETS_AND_NETWORKS,from:null,to:null}}),y({payload:{type:Ft.SET_TOKEN_AND_AMOUNT,amount:"",token:null}}),T({payload:{type:_.GO_BACK_TO,view:{type:je.WALLET_NETWORK_SELECTION}}})}),[T]),D=l.useCallback((()=>{T({payload:{type:_.GO_BACK_TO,view:{type:je.WALLET_NETWORK_SELECTION}}})}),[T]),N=l.useCallback((()=>{T({payload:{type:_.UPDATE_VIEW,view:{type:je.TRANSACTIONS}}})}),[T]),P=l.useCallback((()=>{T({payload:{type:_.GO_BACK_TO,view:{type:je.BRIDGE_REVIEW}}})}),[T]);return l.useEffect((()=>{(async()=>{y({payload:{type:Ft.SET_PROVIDER,web3Provider:a??null}})})()}),[a]),t(C.Provider,{value:I,children:t(zt.Provider,{value:k,children:u(et,{environment:i,children:[x.view.type===je.WALLET_NETWORK_SELECTION&&t(Wa,{}),x.view.type===je.BRIDGE_FORM&&t(Va,{amount:s,tokenAddress:o,defaultTokenImage:b,theme:f}),x.view.type===je.BRIDGE_REVIEW&&t(pn,{}),x.view.type===je.IN_PROGRESS&&t(gn,{transactionHash:x.view.transactionHash,isTransfer:x.view.isTransfer}),x.view.type===je.BRIDGE_FAILURE&&t(Ue,{testId:"bridge-fail",statusText:r("views.BRIDGE_FAILURE.bridgeFailureText.statusText"),actionText:r("views.BRIDGE_FAILURE.bridgeFailureText.actionText"),onActionClick:P,statusType:Ve.FAILURE,onRenderEvent:()=>{let e="";x.view.type===je.BRIDGE_FAILURE&&(e=x.view.reason),v({userJourney:S.BRIDGE,screen:"Failed",extras:{reason:e}}),((e,t)=>{const a=new CustomEvent(c.IMTBL_BRIDGE_WIDGET_EVENT,{detail:{type:d.FAILURE,data:{reason:t,timestamp:(new Date).getTime()}}});console.log("bridge failed ",e,a),void 0!==e&&e.dispatchEvent(a)})(m,e)}}),x.view.type===je.APPROVE_TRANSACTION&&t(hn,{bridgeTransaction:x.view.approveTransaction&&x.view.transaction?{approveTransaction:x.view.approveTransaction,transaction:x.view.transaction}:void 0}),x.view.type===je.TRANSACTIONS&&t(xa,{onBackButtonClick:D,defaultTokenImage:b}),x.view.type===je.CLAIM_WITHDRAWAL&&t(Tn,{transaction:x.view.transaction}),x.view.type===Se.ERROR_VIEW&&t($e,{actionText:r("views.ERROR_VIEW.actionText"),onActionClick:R,onCloseClick:()=>$t(m),errorEventAction:()=>{v({userJourney:S.BRIDGE,screen:"Error"})}}),x.view.type===Se.TOP_UP_VIEW&&t(Ze,{analytics:{userJourney:S.BRIDGE},widgetEvent:c.IMTBL_BRIDGE_WIDGET_EVENT,checkout:e,provider:a,showOnrampOption:p,showSwapOption:w,showBridgeOption:g,onCloseButtonClick:()=>$t(m)}),x.view.type===je.CLAIM_WITHDRAWAL_IN_PROGRESS&&t(Ta,{transactionResponse:x.view.transactionResponse}),x.view.type===je.CLAIM_WITHDRAWAL_SUCCESS&&t(Ue,{statusText:r("views.CLAIM_WITHDRAWAL.IN_PROGRESS.success.text"),actionText:r("views.CLAIM_WITHDRAWAL.IN_PROGRESS.success.actionText"),onRenderEvent:()=>{v({userJourney:S.BRIDGE,screen:"ClaimWithdrawalSuccess"}),((e,t)=>{const a=new CustomEvent(c.IMTBL_BRIDGE_WIDGET_EVENT,{detail:{type:d.CLAIM_WITHDRAWAL_SUCCESS,data:{transactionHash:t}}});console.log("bridge claim withdrawal success event:",e,a),void 0!==e&&e.dispatchEvent(a)})(m,x.view.transactionHash)},onActionClick:N,statusType:Ve.SUCCESS,testId:"claim-withdrawal-success-view"}),x.view.type===je.CLAIM_WITHDRAWAL_FAILURE&&t(Ue,{statusText:r("views.CLAIM_WITHDRAWAL.IN_PROGRESS.failure.text"),actionText:r("views.CLAIM_WITHDRAWAL.IN_PROGRESS.failure.actionText"),onRenderEvent:()=>{let e="";x.view.type===je.CLAIM_WITHDRAWAL_FAILURE&&(e=x.view.reason),v({userJourney:S.BRIDGE,screen:"ClaimWithdrawalFailure",extras:{reason:e}}),((e,t,a)=>{const n=new CustomEvent(c.IMTBL_BRIDGE_WIDGET_EVENT,{detail:{type:d.CLAIM_WITHDRAWAL_FAILURE,data:{transactionHash:t,reason:a,timestamp:(new Date).getTime()}}});console.log("bridge claim withdrawal failed event:",e,n),void 0!==e&&e.dispatchEvent(n)})(m,x.view.transactionHash,"Transaction failed")},onActionClick:N,statusType:Ve.FAILURE,onCloseClick:()=>$t(m),testId:"claim-withdrawal-fail-view"})]})})})}export{En as default};
|
|
1
|
+
import{bG as e,j as t,_ as a,aq as n,o as s,k as o,K as r,bH as i,r as l,I as c,b2 as d,n as u,bI as p,M as w,aN as g,l as h,d as f,a as b,bJ as m,ag as v,bK as x,Q as T,bL as E,P as y,bf as I,t as A,U as S,aP as k,V as C,aD as R,p as _,a8 as D,aa as N,be as P,bM as L,bN as W,G as O,X as B,bO as M,Y as G,E as F,w as z,y as U,T as V,x as $,bP as H,bQ as K,bR as J,$ as j,a2 as q,bS as Q,a3 as Y,bT as X,bU as Z,bV as ee,aj as te,aZ as ae,bW as ne,H as se,a5 as oe,bX as re,a4 as ie,a7 as le,B as ce,a0 as de,A as ue,v as pe,bh as we,bj as ge,b8 as he,bd as fe,bY as be,at as me,as as ve,bZ as xe,bn as Te,bi as Ee,b_ as ye,b$ as Ie,bp as Ae,L as Se,c0 as ke,c1 as Ce,ab as Re,ac as _e,c2 as De,ae as Ne,bq as Pe,c3 as Le,c4 as We,bg as Oe,ah as Be,ai as Me,c5 as Ge,bs as Fe,c6 as ze,bt as Ue,aL as Ve,ak as $e,c7 as He,c8 as Ke,c9 as Je}from"./index-48317d33.js";import{B as je,C as qe,f as Qe,a as Ye,p as Xe,T as Ze,b as et}from"./TopUpView-1ee8b40b.js";import{T as tt,r as at,u as nt}from"./retry-f9fd4fab.js";import{A as st,S as ot,T as rt,a as it,g as lt,F as ct,N as dt,W as ut}from"./balance-014b0b9b.js";const{Axios:pt,AxiosError:wt,CanceledError:gt,isCancel:ht,CancelToken:ft,VERSION:bt,all:mt,Cancel:vt,isAxiosError:xt,spread:Tt,toFormData:Et,AxiosHeaders:yt,HttpStatusCode:It,formToJSON:At,getAdapter:St,mergeConfig:kt}=e;var Ct=["leftSideLength","rightSideLength","text","rc","sx"],Rt=["use"],_t=["size"],Dt=["weight"];function Nt(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function Pt(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?Nt(Object(a),!0).forEach((function(t){o(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):Nt(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function Lt(e){var o=e.leftSideLength,r=void 0===o?8:o,i=e.rightSideLength,l=void 0===i?4:i,c=e.text,d=e.rc,u=void 0===d?t("span",{}):d,p=e.sx,w=a(e,Ct),g="use"in w?w:Pt(Pt({},w),{},{use:void 0}),h=g.use,f=a(g,Rt),b="size"in f?f:Pt({size:void 0},f),m=b.size,v=a(b,_t),x="weight"in v?v:Pt({weight:void 0},v),T=x.weight,E=a(x,Dt),y=function(e){var t=e.text,a=e.leftSideLength,n=void 0===a?4:a,s=e.rightSideLength,o=void 0===s?4:s;if(n+o>=t.length)return t;var r=t.substring(0,n),i=t.substring(t.length-o,t.length);return"".concat(r,"...").concat(i)}({leftSideLength:r,rightSideLength:l,text:c});return n(h||t(s,{size:m,weight:T}),Pt(Pt({},E),{},{rc:u,sx:p,children:y}))}async function Wt(e,t,a){let n=!1,s=t;try{const{isConnected:a}=await e.checkIsWalletConnected({provider:t});n=a}catch(e){throw console.error(e),e}if(!n||a)try{const{provider:o}=await e.connect({provider:t,requestWalletPermissions:a});s=o,n=!0}catch(e){throw e.type===r.USER_REJECTED_REQUEST_ERROR&&console.log("User rejected request"),console.error(e),e}return s}Lt.displayName="EllipsizedText";class Ot{url;ttl;env;cacheMap;setCache(e,t){this.cacheMap[e]={data:t,ttl:(new Date).getTime()+1e3*this.ttl}}getCache(e){const t=this.cacheMap[e];return!t||t.ttl<=(new Date).getTime()?null:t.data}constructor(e){this.env=e.env,this.url=`${i[this.env]}/checkout`,this.cacheMap={},this.ttl=void 0!==e.ttl?e.ttl:60}static isHttpError=e=>"code"in e;async getTransactions(t){const{txType:a,fromAddress:n}=t;try{const t=`${this.url}/v1/transactions?from_address=${n}&tx_type=${a}`,s=this.getCache(t);if(s)return Promise.resolve(s);const o=await e.get(t);if(o.status>=400)return Promise.reject({code:o.status,message:o.statusText});const{data:r}=o;return this.setCache(t,r),Promise.resolve(r)}catch(t){let a=It.InternalServerError,n="InternalServerError";return e.isAxiosError(t)&&(a=t.response?.status||a,n=t.message),Promise.reject({code:a,message:n})}}}var Bt;!function(e){e.BRIDGE="bridge"}(Bt||(Bt={}));const Mt={IN_PROGRESS:"in_progress",WITHDRAWAL_PENDING:"withdrawal_pending"},Gt={web3Provider:null,walletProviderName:null,from:null,to:null,tokenBridge:null,tokenBalances:[],allowedTokens:[],token:null,amount:"0"};var Ft;!function(e){e.SET_WALLETS_AND_NETWORKS="SET_WALLETS_AND_NETWORKS",e.SET_WALLET_PROVIDER_NAME="SET_WALLET_PROVIDER_NAME",e.SET_PROVIDER="SET_PROVIDER",e.SET_TOKEN_BRIDGE="SET_TOKEN_BRIDGE",e.SET_TOKEN_BALANCES="SET_TOKEN_BALANCES",e.SET_ALLOWED_TOKENS="SET_ALLOWED_TOKENS",e.SET_TOKEN_AND_AMOUNT="SET_TOKEN_AND_AMOUNT"}(Ft||(Ft={}));const zt=l.createContext({bridgeState:{...Gt,checkout:{}},bridgeDispatch:()=>{}});zt.displayName="BridgeContext";const Ut=(e,t)=>{switch(t.payload.type){case Ft.SET_WALLETS_AND_NETWORKS:return{...e,from:t.payload.from,to:t.payload.to};case Ft.SET_WALLET_PROVIDER_NAME:return{...e,walletProviderName:t.payload.walletProviderName};case Ft.SET_PROVIDER:return{...e,web3Provider:t.payload.web3Provider};case Ft.SET_TOKEN_BRIDGE:return{...e,tokenBridge:t.payload.tokenBridge};case Ft.SET_TOKEN_BALANCES:return{...e,tokenBalances:t.payload.tokenBalances};case Ft.SET_ALLOWED_TOKENS:return{...e,allowedTokens:t.payload.allowedTokens};case Ft.SET_TOKEN_AND_AMOUNT:return{...e,token:t.payload.token,amount:t.payload.amount};default:return e}},Vt=(e,t)=>{const a=new CustomEvent(c.IMTBL_BRIDGE_WIDGET_EVENT,{detail:{type:d.TRANSACTION_SENT,data:{transactionHash:t}}});console.log("bridge success ",e,a),void 0!==e&&e.dispatchEvent(a)};function $t(e){const t=new CustomEvent(c.IMTBL_BRIDGE_WIDGET_EVENT,{detail:{type:d.CLOSE_WIDGET,data:{}}});console.log("bridge close ",e,t),void 0!==e&&e.dispatchEvent(t)}function Ht(){return u(g,{sx:{gap:"base.spacing.x2"},children:[t(p,{sx:{h:"base.spacing.x4",w:"base.spacing.x32",mt:"base.spacing.x2"}}),t(w,{shimmer:!0,emphasized:!0,size:"small"}),t(w,{shimmer:!0,emphasized:!0,size:"small"}),t(w,{shimmer:!0,emphasized:!0,size:"small"})]})}const Kt={px:"base.spacing.x4",display:"flex",flexDirection:"column",height:"100%"},Jt={flexGrow:"1",flexShrink:"0",flexBasis:"0"},jt={flexGrow:"0",flexShrink:"1",mt:"base.spacing.x2"},qt={bg:"base.color.translucent.emphasis.100",borderRadius:"base.borderRadius.x4",display:"flex",alignItems:"center",justifyContent:"center",flexDirection:"column",height:"100%",px:"base.spacing.x5"};function Qt({openWalletDrawer:e}){const{t:a}=h();return u(b,{sx:qt,children:[t(s,{sx:{mb:"base.spacing.x8"},children:a("views.TRANSACTIONS.status.emptyState.notConnected.body")}),t(f,{variant:"secondary",size:"medium",testId:"transactions-connect-wallet-button",onClick:e,children:a("views.TRANSACTIONS.status.emptyState.notConnected.buttonText")})]})}const Yt={backgroundColor:"base.color.neutral.800",px:"base.spacing.x4",p:"base.spacing.x5",borderRadius:"base.borderRadius.x6"},Xt={color:"base.color.text.body.secondary"};function Zt({checkout:e,isPassport:a}){const{t:n}=h(),[o,r]=l.useState("");return l.useEffect((()=>{e&&r(m[e.config.environment])}),[e]),t(b,{sx:Yt,children:u(b,{sx:{display:"flex",flexDirection:"column"},children:[u(b,{children:[t(s,{size:"small",children:n("views.TRANSACTIONS.support.body1")}),u(s,{size:"small",sx:Xt,children:[n("views.TRANSACTIONS.support.body2"),t(v,{size:"small",rc:t("a",{target:"_blank",href:n("views.TRANSACTIONS.support.supportLink"),rel:"noreferrer"}),children:n("views.TRANSACTIONS.support.body3")})]})]}),a&&u(s,{size:"small",sx:Xt,children:[n("views.TRANSACTIONS.support.passport.body1")," ",t(v,{size:"small",rc:t("a",{target:"_blank",href:o,rel:"noreferrer"}),children:n("views.TRANSACTIONS.support.passport.body2")})]})]})})}const ea={display:"flex",flexDirection:"column",borderRadius:"base.borderRadius.x4",bg:"base.color.translucent.emphasis.100"},ta={p:"base.spacing.x3",d:"flex",justifyContent:"space-between",position:"relative"},aa={display:"flex",flexGrow:"1",alignItems:"center",gap:"base.spacing.x2"};function na({transaction:e,environment:a}){const n=x(e.details.from_chain),o=x(e.details.to_chain);return u(b,{sx:{display:"flex",px:"base.spacing.x4",gap:"base.spacing.x2"},children:[t(y,{sx:{w:"base.icon.size.400",h:"base.icon.size.400"},use:t("img",{src:T(a,n),alt:E[n]})}),u(b,{sx:{display:"flex",flexDirection:"column",flexGrow:"1"},children:[t(s,{size:"xxSmall",sx:{color:"base.color.translucent.standard.900"},children:E[n]}),t(Lt,{size:"xxSmall",sx:{color:"base.color.translucent.standard.600"},text:e.details.from_address})]}),t(b,{sx:{flexGrow:"1"}}),t(I,{icon:"ArrowForward",sx:{w:"base.icon.size.250",fill:"base.color.brand.4"}}),t(b,{sx:{flexGrow:"1"}}),t(y,{sx:{w:"base.icon.size.400",h:"base.icon.size.400"},use:t("img",{src:T(a,o),alt:E[o]})}),u(b,{sx:{display:"flex",flexDirection:"column",flexGrow:"1"},children:[t(s,{size:"xxSmall",sx:{color:"base.color.translucent.standard.900"},children:E[o]}),t(Lt,{size:"xxSmall",sx:{color:"base.color.translucent.standard.600"},text:e.details.to_address})]})]})}function sa({label:e,details:a,transaction:n,fiatAmount:s,amount:o,icon:r,defaultTokenImage:i,environment:c}){const{track:d}=A(),p=l.useMemo((()=>`${a.link}${a.hash}`),[a]);return t(b,{testId:`transaction-item-${n.blockchain_metadata.transaction_hash}`,sx:ea,children:u(st,{chevronSide:"right",sx:{button:{p:"base.spacing.x1"},article:{pr:"base.spacing.x10"}},onExpandChange:e=>e&&d({userJourney:S.BRIDGE,screen:"TransactionItem",control:"Accordion",controlType:"Button"}),children:[t(st.TargetLeftSlot,{sx:{pr:"base.spacing.x2"},children:u(w,{size:"xSmall",children:[t(w.FramedImage,{circularFrame:!0,use:t(tt,{src:r,name:e,defaultImage:i})}),t(w.Label,{children:e}),t(w.Caption,{children:t(v,{size:"xSmall",rc:t("a",{target:"_blank",href:p,rel:"noreferrer",onClick:e=>{return t=a,e.stopPropagation(),void d({userJourney:S.BRIDGE,screen:"TransactionItem",control:"Details",controlType:"Link",extras:{linkDetail:t}});var t}}),children:a.text})}),t(w.PriceDisplay,{fiatAmount:s,price:o})]})}),u(st.ExpandedContent,{sx:{pr:"0",pl:"0",mb:"base.spacing.x3",gap:"0"},children:[t(k,{size:"xSmall",sx:{px:"base.spacing.x2"}}),t(na,{transaction:n,environment:c})]})]})})}const oa=e=>{let t=440;return e&&(t-=20),{backgroundColor:"base.color.neutral.800",px:"base.spacing.x4",pt:"base.spacing.x5",pb:"base.spacing.x4",borderRadius:"base.borderRadius.x6",h:`${t}px`,w:"100%",overflowY:"scroll"}},ra={borderRadius:"base.borderRadius.x4",display:"flex",flexDirection:"column",gap:"base.spacing.x5"};function ia({label:e,transaction:a,fiatAmount:n,amount:o,icon:r,defaultTokenImage:i,environment:c}){const{viewDispatch:d}=l.useContext(C),{track:p}=A(),g=h(),m=l.useMemo((()=>(new Date).getTime()),[]),v=l.useMemo((()=>a.details.current_status.withdrawal_ready_at?new Date(a.details.current_status.withdrawal_ready_at):void 0),[a]),x=a.details.current_status.status===Mt.WITHDRAWAL_PENDING,T=new Intl.RelativeTimeFormat(g[1].language||"en",{numeric:"auto"}),E=l.useMemo((()=>{if(!x||void 0===v)return"";const e=(v.getTime()-m)/6e4;if(e<=1)return"in 1 minute";if(e<60)return T.format(Math.ceil(e),"minute");const t=e/60;if(e<1440)return T.format(Math.ceil(t),"hour");const a=t/24;return T.format(Math.ceil(a),"day")}),[m,g[1].language]),y=!!v&&v.getTime()<m,D=l.useMemo((()=>!0===y?g.t("views.TRANSACTIONS.status.withdrawalPending.withdrawalReadyText"):`${g.t("views.TRANSACTIONS.status.withdrawalPending.withdrawalDelayText")} ${E}`),[E,g[1].language]);return u(b,{testId:`transaction-item-${a.blockchain_metadata.transaction_hash}`,sx:ea,children:[x&&u(R,{children:[u(b,{sx:ta,children:[u(b,{sx:aa,children:[t(I,{icon:"Alert",variant:"bold",sx:{fill:y?"base.color.status.fatal.bright":"base.color.status.attention.bright",w:"base.icon.size.200"}}),t(s,{testId:`transaction-item-${a.blockchain_metadata.transaction_hash}-action-message`,size:"xSmall",sx:{color:"base.color.text.body.secondary"},children:D})]}),x&&y&&t(f,{testId:`transaction-item-${a.blockchain_metadata.transaction_hash}-action-button`,variant:"primary",size:"small",onClick:()=>{d({payload:{type:_.UPDATE_VIEW,view:{type:je.CLAIM_WITHDRAWAL,transaction:a}}})},children:g.t("views.TRANSACTIONS.status.withdrawalPending.actionButtonText")})]}),t(k,{size:"small",sx:{color:"base.color.translucent.emphasis.300",opacity:.1}})]}),u(st,{chevronSide:"right",sx:{button:{p:"base.spacing.x1"},article:{pr:"base.spacing.x10"},borderTopRightRadius:"0",borderTopLeftRadius:"0"},onExpandChange:e=>e&&p({userJourney:S.BRIDGE,screen:"TransactionItem",control:"Accordion",controlType:"Button"}),children:[t(st.TargetLeftSlot,{sx:{pr:"base.spacing.x2"},children:u(w,{size:"xSmall",children:[t(w.FramedImage,{circularFrame:!0,use:t(tt,{src:r,name:e,defaultImage:i})}),t(w.Label,{children:e}),t(w.Caption,{children:g.t("views.TRANSACTIONS.status.withdrawalPending.caption")}),t(w.PriceDisplay,{fiatAmount:n,price:o})]})}),u(st.ExpandedContent,{sx:{pr:"0",pl:"0",mb:"base.spacing.x3",gap:"0"},children:[t(k,{size:"xSmall",sx:{px:"base.spacing.x2"}}),t(na,{transaction:a,environment:c})]})]})]})}const la={display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",p:"base.spacing.x2",pb:"base.spacing.x4"},ca={position:"relative",pr:"base.spacing.x2"},da={width:"base.icon.size.400"},ua={position:"absolute",top:"-6px",left:"18px",width:"20px",padding:"2px",backgroundColor:"base.color.translucent.inverse.900",borderRadius:"base.borderRadius.x2"},pa={backgroundColor:"transparent",width:"base.icon.size.400",height:"base.icon.size.400",marginRight:"base.spacing.x1",padding:"base.spacing.x1"};function wa({onChangeWalletClick:e}){const{t:a}=h(),{bridgeState:{from:n}}=l.useContext(zt),[s,o]=l.useState(void 0),[r,i]=l.useState(!1),{isWalletConnectEnabled:c,getWalletLogoUrl:d}=D(),{track:p}=A(),w=n?.walletAddress||"",g=n?.walletProviderInfo;return l.useEffect((()=>{if(c){const e=N(n?.web3Provider);i(e),e&&(async()=>{o(await d())})()}}),[c,n]),u(b,{sx:la,children:[u(b,{sx:{display:"flex",alignItems:"center",gap:"base.spacing.x1"},children:[r&&s?u(b,{sx:ca,children:[t(y,{sx:da,use:t("img",{src:s,alt:"walletconnect"})}),t(P,{logo:"WalletConnectSymbol",sx:ua})]}):g&&t(L,{src:g.icon,alt:g.name,sx:pa}),t(Lt,{leftSideLength:6,rightSideLength:4,text:w})]}),t(f,{size:"small",variant:"tertiary",onClick:()=>{p({userJourney:S.BRIDGE,screen:je.TRANSACTIONS,controlType:"Button",control:"Pressed"}),e()},children:a("views.TRANSACTIONS.changeWallet.buttonText")})]})}function ga({checkout:e,transactions:a,knownTokenMap:n,isPassport:s,defaultTokenImage:o,changeWallet:r}){const{cryptoFiatState:i}=l.useContext(qe),{t:c}=h(),[d,p]=l.useState(""),{environment:w}=e.config;l.useEffect((()=>{e&&p(W[e.config.environment])}),[e]);const g=l.useCallback(((e,t)=>e.details.current_status.status===Mt.WITHDRAWAL_PENDING&&t.details.current_status.status!==Mt.WITHDRAWAL_PENDING?-1:e.details.current_status.status===t.details.current_status.status?0:1),[]),f=l.useCallback((t=>O(t.details.from_token_address)?B(e.config.environment,M(t.details.from_chain)):B(e.config.environment,t.details.from_token_address)),[e]);return u(b,{sx:oa(s),children:[t(wa,{onChangeWalletClick:r}),t(b,{testId:"move-transaction-list",sx:ra,children:a.sort(g).map((e=>{const a=e.blockchain_metadata.transaction_hash,s=n[e.details.from_chain][e.details.from_token_address.toLowerCase()],r=Qe(e.details.amount,s.decimals),l=G(r,s.symbol,i.conversions);return e.details.current_status.status===Mt.WITHDRAWAL_PENDING?t(ia,{label:s.symbol,transaction:e,fiatAmount:`${c("views.TRANSACTIONS.fiatPricePrefix")}${l}`,amount:r,icon:f(e),defaultTokenImage:o,environment:w},a):t(sa,{label:s.symbol,details:{text:c("views.TRANSACTIONS.status.inProgress.stepInfo"),link:d,hash:a},transaction:e,fiatAmount:`${c("views.TRANSACTIONS.fiatPricePrefix")}${l}`,amount:r,icon:f(e),defaultTokenImage:o,environment:w},a)}))})]})}const ha={backgroundColor:"base.color.neutral.800",px:"base.spacing.x4",pt:"base.spacing.x5",pb:"base.spacing.x4",borderRadius:"base.borderRadius.x6",h:"100%",w:"100%",display:"flex",flexDirection:"column"},fa={display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",padding:"base.spacing.x5",flex:1},ba={mb:"base.spacing.x8",color:"base.color.text.body.secondary"},ma={color:"base.color.text.body.secondary"};function va({checkout:e,isPassport:a,changeWallet:n}){const{page:o}=A(),{t:r}=h(),[i,c]=l.useState("");return l.useEffect((()=>{e&&c(m[e.config.environment])}),[e]),l.useEffect((()=>{o({userJourney:S.BRIDGE,screen:"NoTransactions"})}),[]),u(b,{sx:ha,children:[t(wa,{onChangeWalletClick:n}),u(b,{sx:fa,children:[t(s,{size:"small",sx:ba,children:r("views.TRANSACTIONS.status.noTransactions.body")}),a&&u(s,{size:"small",sx:ma,children:[r("views.TRANSACTIONS.status.noTransactions.passport.body")," ",t(v,{size:"small",rc:t("a",{target:"_blank",href:i,rel:"noreferrer"}),children:r("views.TRANSACTIONS.status.noTransactions.passport.link")})]})]})]})}function xa({defaultTokenImage:e,onBackButtonClick:a}){const{eventTargetState:{eventTarget:n}}=l.useContext(F),{cryptoFiatDispatch:s}=l.useContext(qe),{bridgeDispatch:o,bridgeState:{checkout:r,from:i}}=l.useContext(zt),{page:c}=A(),{t:d}=h(),{track:p}=A(),[w,g]=l.useState(!0),[f,m]=l.useState(void 0),[v,x]=l.useState([]),[T,E]=l.useState(!1),y=z(i?.web3Provider),I=l.useCallback((async()=>{if(!r)return{};const e=U(r.config);try{return((await r.getTokenAllowList({type:V.BRIDGE,chainId:e})).tokens??[]).reduce(((e,t)=>(e[t.address.toLowerCase()]=t,e)),{})}catch(e){return console.error(e),[]}}),[r]),k=l.useCallback((async()=>{if(!i?.web3Provider)return{};if(!i?.walletAddress)return{};const e=$(r.config);try{return(await r.getAllBalances({provider:i?.web3Provider,walletAddress:i?.walletAddress,chainId:e})).balances.reduce(((e,t)=>(e[t.token.address.toLowerCase()]=t.token,e)),{})}catch(e){return console.error(e),[]}}),[r,i]),C=async e=>{const t=X(U(r.config)),a=X($(r.config)),[n,o]=await Promise.all([I(),k()]),i={};Object.entries(e).forEach((([s,r])=>{(e[s]===t&&!n[s]||e[s]===a&&!o[s])&&(i[s]=r)}));const l=new Z(r.config.networkMap.get(U(r.config))?.rpcUrls[0]),c=new Z(r.config.networkMap.get($(r.config))?.rpcUrls[0]),d=[],u=[];Object.entries(i).forEach((([e,a])=>{a===t?d.push(r.getTokenInfo({provider:l,tokenAddress:e})):u.push(r.getTokenInfo({provider:c,tokenAddress:e}))}));const p=await Promise.allSettled(d),w=await Promise.allSettled(u);p.filter((e=>"fulfilled"===e.status)).forEach((e=>{const t=e;n[t.value.address.toLowerCase()]=t.value})),w.filter((e=>"fulfilled"===e.status)).forEach((e=>{const t=e;o[t.value.address.toLowerCase()]=t.value}));const g=[];return Object.values(n).forEach((e=>g.push(e.symbol.toLowerCase()))),Object.values(o).forEach((e=>g.push(e.symbol.toLowerCase()))),s({payload:{type:Ye.SET_TOKEN_SYMBOLS,tokenSymbols:g}}),{[t]:n,[a]:o}},R=l.useCallback((async(e,t)=>new Ot({env:e}).getTransactions({txType:Bt.BRIDGE,fromAddress:t})),[]),_=l.useCallback((async e=>{p({userJourney:S.BRIDGE,screen:"EmptyStateNotConnected",control:"WalletProvider",controlType:"Select",extras:{walletProviderName:e.providerDetail.info.name}});try{let t=!1;e.providerDetail.info.rdns===H.METAMASK&&(t=!0);const a=new K(e.provider),n=await Wt(r,a,t),s=await n.getNetwork(),i=await n.getSigner().getAddress();x([]),o({payload:{type:Ft.SET_WALLETS_AND_NETWORKS,from:{web3Provider:n,walletProviderInfo:{...e.providerDetail.info},walletAddress:i.toLowerCase(),network:s.chainId},to:null}})}catch(e){console.error(e)}finally{E(!1)}}),[r]),D=l.useCallback((async()=>{if(!i?.walletAddress)return;const e=await R(r.config.environment,i?.walletAddress),t={};return e.result.forEach((e=>{t[e.details.from_token_address]=e.details.from_chain})),{tokens:await C(t),transactions:e.result}}),[i,R]),{providers:N}=J({checkout:r}),P=l.useMemo((()=>N),[N]);return l.useEffect((()=>{(async()=>{g(!0);const e=await at(D,ee);if(!e)return void g(!1);const t=e.transactions.filter((t=>{const a=e.tokens[t.details.from_chain];if(!a)return!1;return!!a[t.details.from_token_address.toLowerCase()]}));m(e.tokens),x(t),g(!1)})()}),[i,r]),l.useEffect((()=>{c({userJourney:S.BRIDGE,screen:"Transactions"})}),[]),t(Y,{testId:"bridge-view",header:t(j,{showBack:!0,onBackButtonClick:()=>{i&&(o({payload:{type:Ft.SET_WALLETS_AND_NETWORKS,from:{web3Provider:i?.web3Provider,walletAddress:i?.walletAddress,walletProviderInfo:i?.walletProviderInfo,network:i?.network},to:null}}),o({payload:{type:Ft.SET_TOKEN_AND_AMOUNT,token:null,amount:""}})),a()},title:d("views.TRANSACTIONS.layoutHeading"),onCloseButtonClick:()=>$t(n)}),footer:t(q,{}),children:u(b,{sx:Kt,children:[u(b,{sx:Jt,children:[!i?.web3Provider&&t(Qt,{openWalletDrawer:()=>E(!0)}),i?.web3Provider&&w&&t(Ht,{}),i?.web3Provider&&!w&&v.length>0&&f&&t(ga,{checkout:r,transactions:v,knownTokenMap:f,isPassport:y,defaultTokenImage:e,changeWallet:()=>E(!0)}),i?.web3Provider&&!w&&0===v.length&&t(va,{checkout:r,isPassport:y,changeWallet:()=>E(!0)})]}),i?.web3Provider&&v.length>0&&t(b,{sx:jt,children:t(Zt,{checkout:r,isPassport:y})}),t(Q,{testId:"select-wallet-drawer",drawerText:{heading:d("views.TRANSACTIONS.walletSelection.heading")},showWalletSelectorTarget:!1,walletOptions:P,showDrawer:T,setShowDrawer:e=>{E(e)},onWalletChange:_})]})})}function Ta({transactionResponse:e}){const{t:a}=h(),{viewDispatch:n}=l.useContext(C),{page:s}=A();return l.useEffect((()=>{s({userJourney:S.BRIDGE,screen:"ClaimWithdrawalInProgress"})}),[]),l.useEffect((()=>{e&&(async()=>{try{const t=await e.wait();if(1===t.status)return void n({payload:{type:_.UPDATE_VIEW,view:{type:je.CLAIM_WITHDRAWAL_SUCCESS,transactionHash:t.transactionHash}}});n({payload:{type:_.UPDATE_VIEW,view:{type:je.CLAIM_WITHDRAWAL_FAILURE,transactionHash:t.transactionHash,reason:"Transaction failed"}}})}catch(e){console.error(e),n({payload:{type:_.UPDATE_VIEW,view:{type:je.CLAIM_WITHDRAWAL_FAILURE,transactionHash:"",reason:"Transaction failed"}}})}})()}),[e]),t(te,{loadingText:a("views.CLAIM_WITHDRAWAL.IN_PROGRESS.loading.text")})}function Ea(e){return e?e.substring(0,6).concat("...").concat(e.substring(e.length-4)):""}const ya={height:"100%",display:"flex",flexDirection:"column",paddingX:"base.spacing.x4"},Ia={paddingTop:"base.spacing.x10",paddingBottom:"base.spacing.x4"},Aa={display:"flex",flexDirection:"column",paddingY:"base.spacing.x6"};function Sa({testId:e,chainId:a,chainName:n,onNetworkClick:s,environment:o}){return u(w,{testId:`${e}-network-list-${a}`,size:"medium",emphasized:!0,onClick:async()=>{await s(a)},sx:{marginBottom:"base.spacing.x1"},children:[t(w.FramedImage,{use:t("img",{src:T(o,a),alt:n})}),t(w.Label,{size:"medium",children:n})]})}ae.IMTBL_ZKEVM_DEVNET,ae.IMTBL_ZKEVM_TESTNET,ae.IMTBL_ZKEVM_MAINNET,ae.ETHEREUM,ae.SEPOLIA;const ka={position:"relative",width:"100%",backgroundColor:"base.color.translucent.emphasis.100",borderRadius:"base.borderRadius.x4",paddingX:"base.spacing.x3",paddingY:"base.spacing.x5",display:"flex",flexDirection:"row",gap:"base.spacing.x4",alignItems:"center","&:hover":{cursor:"pointer",backgroundColor:"base.color.translucent.emphasis.200"}},Ca={width:"base.icon.size.500",backgroundColor:"base.color.translucent.standard.200",borderRadius:"base.borderRadius.x2"},Ra={position:"absolute",top:"14px",left:"38px",width:"28px",padding:"base.spacing.x1",backgroundColor:"base.color.translucent.inverse.900",borderRadius:"base.borderRadius.x2"},_a={color:"base.color.text.body.secondary"},Da={paddingY:"base.spacing.x6",borderRadius:"base.borderRadius.x18"};function Na({testId:e,walletProvider:a,walletProviderDetail:n,walletAddress:o,walletName:r,chainId:i,disableNetworkButton:c=!1,onWalletClick:d,onNetworkClick:p,environment:w}){const g=ne(i),[h,m]=l.useState(void 0),[v,x]=l.useState("Other"),[E,I]=l.useState(!1),{isWalletConnectEnabled:A,getWalletLogoUrl:S,getWalletName:k}=D(),C=l.useMemo((()=>n?.info.rdns===H.PASSPORT?r:N(a)?v:n?.info.name),[n,v,a]);return l.useEffect((()=>{if(A){const e=N(a);I(e),e&&((async()=>{m(await S())})(),x(k()))}}),[A,a,S,k]),u(b,{testId:`${e}-${n?.info.rdns}-${i}-button-wrapper`,sx:ka,onClick:d,children:[E&&h?u(R,{children:[t(y,{imageUrl:h,alt:"walletconnect",sx:Ca}),t(P,{logo:"WalletConnectSymbol",sx:Ra})]}):n&&t(L,{src:n.info.icon,alt:n.info.name}),u(b,{sx:{display:"flex",flexDirection:"column",flex:1},children:[t(se,{size:"xSmall",sx:{textTransform:"capitalize"},children:C}),t(s,{size:"xSmall",sx:_a,children:o})]}),u(f,{testId:`${e}-network-${i}-button`,size:"small",disabled:c,onClick:e=>{e.stopPropagation(),p(e)},variant:"tertiary",sx:Da,children:[t(y,{sx:{w:"base.icon.size.400",h:"base.icon.size.400"},use:t("img",{src:T(w,i),alt:g[i]})}),g]})]})}const Pa="wallet-network-selector";function La(){const{t:e}=h(),{bridgeState:{checkout:a,from:n,to:s},bridgeDispatch:o}=l.useContext(zt),{viewDispatch:r}=l.useContext(C),{providers:i}=J({checkout:a}),{environment:c}=a.config,{track:d}=A(),p=n?.web3Provider??null,w=n?.network??null,g=n?.walletAddress?.toLowerCase()??"",m=n?{provider:p,providerDetail:{provider:p,info:{...n.walletProviderInfo}}}:null,v=s?.web3Provider??null,x=s?.network??null,T=s?.walletAddress?.toLowerCase()??"",E=s?{provider:v,providerDetail:{provider:v,info:{...s.walletProviderInfo}}}:null,y=U(a.config),I=ne(y),k=$(a.config),R=ne(k),[D,P]=l.useState(!1),[L,W]=l.useState(!1),[O,B]=l.useState(p),[M,G]=l.useState(w),[F,V]=l.useState(g),[j,q]=l.useState(m),[Y,X]=l.useState(!1),[Z,ee]=l.useState(!1),[te,ae]=l.useState(v),[ce,de]=l.useState(x),[ue,pe]=l.useState(T),[we,ge]=l.useState(E),he=O&&M,fe=te&&ce,be=l.useMemo((()=>O?oe(O):null),[O]),me=l.useMemo((()=>te?oe(te):null),[te]),ve=l.useMemo((()=>i),[i]),xe=l.useMemo((()=>i.filter((e=>e.info.rdns!==H.PASSPORT||e.info.rdns===H.PASSPORT&&j?.providerDetail?.info?.rdns!==H.PASSPORT))),[i,M,j]);function Te(){ae(null),de(null)}l.useEffect((()=>{n&&s&&o({payload:{type:Ft.SET_WALLETS_AND_NETWORKS,from:null,to:null}})}),[n,s]);const Ee=l.useCallback((async e=>{Te(),q(e);let t=!1;e.providerDetail.info.rdns===H.METAMASK&&(t=!0);const n=new K(e.provider),s=await Wt(a,n,t);await(async e=>{B(e);const t=await e.getSigner().getAddress();if(V(t.toLowerCase()),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"FromWallet",controlType:"Select",extras:{walletAddress:t.toLowerCase()}}),z(e))return G(k),P(!1),void d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"FromNetwork",controlType:"Select",extras:{chainId:k}});G(null),P(!1),setTimeout((()=>W(!0)),500)})(s)}),[a]),ye=l.useCallback((async e=>{O&&(Te(),W(!1),G(e),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"FromNetwork",controlType:"Select",extras:{chainId:e}}))}),[a,O]),Ie=l.useCallback((async e=>{te&&(X(!1),de(e),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"ToNetwork",controlType:"Select",extras:{chainId:e}}))}),[a,te]),Ae=l.useCallback((e=>{const t=F===e&&M===k?y:k;de(t),ee(!1),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"ToNetwork",controlType:"Select",extras:{chainId:t}})}),[F,M]),Se=l.useCallback((e=>{ae(e),e.getSigner().getAddress().then((e=>{pe(e.toLowerCase()),Ae(e.toLowerCase()),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"ToWallet",controlType:"Select",extras:{walletAddress:e.toLowerCase()}})}))}),[Ae]),ke=l.useCallback((async e=>{if(j?.providerDetail.info.rdns===e.providerDetail.info.rdns){ae(O),ge(e);const t=await O.getSigner().getAddress();return pe(t.toLowerCase()),Ae(t.toLowerCase()),void d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"ToWallet",controlType:"Select",extras:{walletAddress:t.toLowerCase()}})}try{ge(e);const t=new K(e.provider),n=await Wt(a,t,!1);if(N(n))Se(n);else{ae(n);const e=await n.getSigner().getAddress();pe(e.toLowerCase()),Ae(e.toLowerCase()),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"ToWallet",controlType:"Select",extras:{walletAddress:e.toLowerCase()}})}}catch(e){console.error(e)}}),[be,O,Ae,Se]),Ce=l.useCallback((()=>{O&&M&&te&&ce&&(o({payload:{type:Ft.SET_TOKEN_BALANCES,tokenBalances:[]}}),o({payload:{type:Ft.SET_ALLOWED_TOKENS,allowedTokens:[]}}),o({payload:{type:Ft.SET_WALLETS_AND_NETWORKS,from:{web3Provider:O,walletAddress:F.toLowerCase(),walletProviderInfo:j?.providerDetail.info,network:M},to:{web3Provider:te,walletAddress:ue.toLowerCase(),walletProviderInfo:we?.providerDetail.info,network:ce}}}),d({userJourney:S.BRIDGE,screen:"WalletAndNetwork",control:"Next",controlType:"Button",extras:{fromWalletAddress:F,fromNetwork:M,fromWallet:{address:F,rdns:j?.providerDetail.info.rdns,uuid:j?.providerDetail.info.uuid,isPassportWallet:z(O),isMetaMask:re(O)},toWalletAddress:ue,toNetwork:ce,toWallet:{address:ue,rdns:we?.providerDetail.info.rdns,uuid:we?.providerDetail.info.uuid,isPassportWallet:z(te),isMetaMask:re(te)},moveType:M&&M===ce?"transfer":"bridge"}}),r({payload:{type:_.UPDATE_VIEW,view:{type:je.BRIDGE_FORM}}}))}),[j,O,M,F,we,te,ce,ue]);return u(b,{testId:Pa,sx:ya,children:[t(se,{testId:`${Pa}-heading`,size:"small",weight:"regular",sx:Ia,children:e("views.WALLET_NETWORK_SELECTION.heading")}),t(se,{size:"xSmall",sx:{paddingBottom:"base.spacing.x2"},children:e("views.WALLET_NETWORK_SELECTION.fromFormInput.heading")}),t(Q,{testId:`${Pa}-from`,drawerText:{heading:e("views.WALLET_NETWORK_SELECTION.fromFormInput.walletSelectorHeading"),defaultText:e("views.WALLET_NETWORK_SELECTION.fromFormInput.selectDefaultText")},showWalletSelectorTarget:!he,showDrawer:D,setShowDrawer:P,walletOptions:ve,onWalletChange:Ee}),he&&be&&u(b,{sx:{display:"flex",flexDirection:"column",gap:"base.spacing.x10"},children:[t(Na,{testId:Pa,walletProviderDetail:j?.providerDetail,walletProvider:O,walletName:be,walletAddress:Ea(F),chainId:M,disableNetworkButton:be===ie.PASSPORT.toString(),onWalletClick:()=>{P(!0)},onNetworkClick:()=>W(!0),environment:c}),u(b,{children:[t(se,{size:"xSmall",sx:{paddingBottom:"base.spacing.x2"},children:e("views.WALLET_NETWORK_SELECTION.toFormInput.heading")}),t(Q,{testId:`${Pa}-to`,drawerText:{heading:e("views.WALLET_NETWORK_SELECTION.toFormInput.walletSelectorHeading"),defaultText:e("views.WALLET_NETWORK_SELECTION.toFormInput.selectDefaultText")},showWalletSelectorTarget:!fe,walletOptions:xe,showDrawer:Z,setShowDrawer:ee,onWalletChange:ke})]})]}),t(le,{headerBarTitle:e(L?"views.WALLET_NETWORK_SELECTION.fromFormInput.networkSelectorHeading":"views.WALLET_NETWORK_SELECTION.toFormInput.networkSelectorHeading"),size:"full",onCloseDrawer:()=>{L?W(!1):X(!1)},visible:L||Y,children:u(le.Content,{sx:{paddingX:"base.spacing.x4"},children:[t(Sa,{testId:Pa,chainName:R,onNetworkClick:L?ye:Ie,chainId:k,environment:c},R),(Y||j?.providerDetail.info.rdns!==H.PASSPORT)&&t(Sa,{testId:Pa,chainName:I,onNetworkClick:L?ye:Ie,chainId:y,environment:c},I)]})}),fe&&me&&u(b,{sx:{flex:1,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[t(Na,{testId:Pa,walletProviderDetail:we?.providerDetail,walletProvider:te,walletName:me,walletAddress:Ea(ue),chainId:ce,disableNetworkButton:M===y||me===ie.PASSPORT.toString()||F===ue,onWalletClick:()=>{ee(!0)},onNetworkClick:()=>{X(!0)},environment:c}),t(b,{sx:Aa,children:t(f,{testId:`${Pa}-submit-button`,size:"large",onClick:Ce,children:e("views.WALLET_NETWORK_SELECTION.submitButton.text")})})]})]})}function Wa(){const{t:e}=h(),{viewDispatch:a}=l.useContext(C),{eventTargetState:{eventTarget:n}}=l.useContext(F),{page:s}=A();return l.useEffect((()=>{s({userJourney:S.BRIDGE,screen:"WalletNetworkSelection"})}),[]),t(Y,{testId:"bridge-view",header:t(j,{title:e("views.WALLET_NETWORK_SELECTION.layoutHeading"),onCloseButtonClick:()=>$t(n),rightActions:t(ce,{icon:"Minting",sx:de(),onClick:()=>{a({payload:{type:_.UPDATE_VIEW,view:{type:je.TRANSACTIONS}}})},testId:"move-transactions-button"})}),footer:t(q,{}),children:t(La,{})})}function Oa(e,t){return e&&0!==parseFloat(e)?t&&Number(e)>Number(t)?"views.BRIDGE_FORM.validation.insufficientBalance":"":"views.BRIDGE_FORM.validation.noAmountInputted"}const Ba={height:"100%",display:"flex",flexDirection:"column",justifyContent:"space-between",paddingTop:"base.spacing.x10"},Ma={paddingTop:"base.spacing.x4",display:"flex",gap:"base.spacing.x1"},Ga={display:"flex",flexDirection:"column",paddingY:"base.spacing.x6",paddingX:"base.spacing.x4"};function Fa({sx:e}){return u(b,{sx:{...e,paddingTop:"0",marginTop:"base.spacing.x4"},rc:t("div",{}),children:[t(b,{sx:{display:"flex",backgroundColor:"#F3F3F30A",borderRadius:"8px"},children:t(b,{sx:{minw:"170px",height:"64px",WebkitMaskPosition:"left center",WebkitMaskRepeat:"no-repeat",WebkitMaskSize:"contain",WebkitMaskImage:'url(\'data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none"><path d="M154.75 39q1.65 0 2.85-1.15 1.15-1.15 1.15-2.85v-4q0-1.65-1.15-2.8-1.2-1.2-2.85-1.2h-93.6q-2.3 0-3.85 1.2-1.55 1.15-1.55 2.8v4q0 1.7 1.55 2.85Q58.85 39 61.15 39h93.6m-111.7-3.35q.2-1.3.2-2.65 0-1.35-.2-2.65-.75-4.9-4.5-8.65-4.7-4.7-11.3-4.7-6.65 0-11.3 4.7-4.7 4.7-4.7 11.3 0 6.65 4.7 11.3Q20.6 49 27.25 49q6.6 0 11.3-4.7 3.75-3.7 4.5-8.65Z" id="a"/></svg>\')'},rc:t("span",{}),children:t(p,{rc:t("span",{})})})}),t(b,{sx:{display:"flex",width:"100%",backgroundColor:"#F3F3F30A",borderRadius:"8px"},children:t(b,{sx:{width:"100%",height:"64px",WebkitMaskPosition:"right center",WebkitMaskRepeat:"no-repeat",WebkitMaskSize:"contain",WebkitMaskImage:'url(\'data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="196" height="96"><path d="M182.85 55.2Q181.65 54 180 54h-56q-1.7 0-2.85 1.2Q120 56.35 120 58v4q0 1.7 1.15 2.85Q122.3 66 124 66h56q1.65 0 2.85-1.15Q184 63.7 184 62v-4q0-1.65-1.15-2.8m0-22Q181.65 32 180 32H68q-1.7 0-2.85 1.2Q64 34.35 64 36v8q0 1.7 1.15 2.85Q66.3 48 68 48h112q1.65 0 2.85-1.15Q184 45.7 184 44v-8q0-1.65-1.15-2.8Z" id="a"/></svg>\')'},rc:t("span",{}),children:t(p,{rc:t("span",{})})})})]})}function za(e){const{t:a}=h(),{bridgeDispatch:n,bridgeState:{tokenBalances:s,allowedTokens:o,checkout:r,from:i,to:c,amount:d,token:p}}=l.useContext(zt),{cryptoFiatState:w,cryptoFiatDispatch:g}=l.useContext(qe),{viewDispatch:m}=l.useContext(C),{testId:v,defaultAmount:x,defaultTokenAddress:T,isTokenBalancesLoading:E,defaultTokenImage:y,environment:I,theme:k}=e,{track:R}=A(),[D,N]=l.useState(x||""),[P,L]=l.useState(""),[W,B]=l.useState(),[M,F]=l.useState(""),[z,U]=l.useState(""),[V,$]=l.useState(!1),H=l.useRef(!1),K=W?`${a("views.BRIDGE_FORM.content.availableBalancePrefix")} ${ue(W?.formattedBalance)}`:"",[J,j]=l.useState([]),[q,Q]=l.useState(!1),Y=l.useCallback(((e,t)=>t?`${e.toLowerCase()}-${t.toLowerCase()}`:e.toLowerCase()),[]);l.useEffect((()=>{if(0===s.length)return;const e=s.filter((e=>e.balance.gt(0))).map((e=>({id:Y(e.token.symbol,e.token.address),name:e.token.name,symbol:e.token.symbol,icon:e.token.icon,balance:{formattedFiatAmount:0===w.conversions.size?pe(""):G(e.formattedBalance,e.token.symbol,w.conversions),formattedAmount:ue(e.formattedBalance)}})));j(e),H.current||(H.current=!0,T&&B(s.find((e=>O(e.token.address)&&T?.toLocaleUpperCase()===we||e.token.address?.toLowerCase()===T?.toLowerCase()))))}),[s,w.conversions,T,H.current,Y,pe]),l.useEffect((()=>{if(d&&p){N(d);for(let e=0;e<s.length;e++){const t=s[e];if(t.token.address===p.address){B(t);break}}n({payload:{type:Ft.SET_TOKEN_AND_AMOUNT,token:null,amount:""}})}}),[d,p,s]);const X=l.useMemo((()=>W&&W.token?Y(W.token.symbol,W.token.address):void 0),[W,s,w.conversions,Y]),Z=e=>{if(N(e),P){const t=Oa(e,W?.formattedBalance);L(t)}var t;W&&(U(G(e,W.token.symbol,w.conversions)),t=!0,Number.isNaN(parseFloat(D))||parseFloat(D)<=0||!W||!i||!i.walletAddress||!c||!c.walletAddress||t&&V||!r||$(!0))};l.useEffect((()=>{g({payload:{type:Ye.SET_TOKEN_SYMBOLS,tokenSymbols:o.map((e=>e.symbol))}})}),[g,o]),l.useEffect((()=>{D&&W&&U(G(D,W.token.symbol,w.conversions))}),[D,W]);const ee=l.useCallback((()=>{const e=W?"":"views.BRIDGE_FORM.validation.noTokenSelected";const t=Oa(D,W?.formattedBalance);return e&&F(e),t&&L(t),!e&&!t}),[W,D,F,L]),te=l.useCallback((async()=>{ee()&&r&&i?.web3Provider&&W&&(R({userJourney:S.BRIDGE,screen:"TokenAmount",control:"Review",controlType:"Button",extras:{tokenAddress:W.token.address,amount:D}}),n({payload:{type:Ft.SET_TOKEN_AND_AMOUNT,token:W.token,amount:D}}),m({payload:{type:_.UPDATE_VIEW,view:{type:je.BRIDGE_REVIEW}}}))}),[r,i?.web3Provider,ee,W]);return u(b,{testId:v,sx:Ba,children:[u(b,{sx:{paddingX:"base.spacing.x4"},children:[t(se,{testId:`${v}-content-heading`,size:"small",weight:"regular",sx:{paddingBottom:"base.spacing.x4"},children:a("views.BRIDGE_FORM.content.title")}),(!T||!E)&&u(b,{sx:Ma,children:[t(ot,{testId:"bridge-token",options:J,optionsLoading:E,coinSelectorHeading:a("views.BRIDGE_FORM.bridgeForm.from.selectorTitle"),selectedOption:X,subtext:K,textAlign:"left",errorMessage:a(M),onSelectChange:e=>(e=>{const t=s.find((t=>e===Y(t.token.symbol,t.token.address)));t&&(B(t),F(""))})(e),defaultTokenImage:y,environment:I,theme:k}),t(rt,{testId:"bridge-amount",type:"number",value:D,placeholder:a("views.BRIDGE_FORM.bridgeForm.from.inputPlaceholder"),subtext:`${a("views.BRIDGE_FORM.content.fiatPricePrefix")} $${pe(z,!0)}`,validator:ge,onTextInputChange:e=>Z(e),onTextInputEnter:te,textAlign:"right",inputMode:"decimal",errorMessage:a(P)})]}),T&&E&&t(Fa,{sx:Ma})]}),u(b,{sx:Ga,children:[t(f,{testId:`${v}-button`,variant:"primary",onClick:te,size:"large",children:a("views.BRIDGE_FORM.bridgeForm.buttonText")}),t(it,{visible:q,showHeaderBar:!1,onCloseDrawer:()=>Q(!1),onRetry:async()=>{Q(!1),await te()}})]})]})}const Ua=1e4;function Va({amount:e,tokenAddress:a,defaultTokenImage:n,theme:s}){const{t:o}=h(),{bridgeState:r,bridgeDispatch:i}=l.useContext(zt),{checkout:c,from:d}=r,{eventTargetState:{eventTarget:u}}=l.useContext(F),[p,w]=l.useState(!1),{page:g}=A();l.useEffect((()=>{(e||a)&&g({userJourney:S.BRIDGE,screen:"TokenAmount",extras:{amount:e,tokenAddress:a}})}),[]);const f=l.useCallback((async()=>{if(c&&d?.web3Provider)try{const e=await lt({checkout:c,provider:d.web3Provider,chainId:d?.network,allowTokenListType:V.BRIDGE,retryPolicy:{retryIntervalMs:0,retries:0}});if(void 0===e)return;i({payload:{type:Ft.SET_TOKEN_BALANCES,tokenBalances:e.allowedBalances}}),i({payload:{type:Ft.SET_ALLOWED_TOKENS,allowedTokens:e.allowList.tokens}})}catch(e){console.debug(e)}}),[c,d?.web3Provider,d?.network]);return nt(f,Ua),l.useEffect((()=>{c&&d?.web3Provider&&(w(!0),f().finally((()=>w(!1))))}),[c,d?.web3Provider]),t(Y,{testId:"bridge-view",header:t(j,{showBack:!0,title:o("views.BRIDGE_FORM.header.title"),onCloseButtonClick:()=>$t(u)}),footer:t(q,{}),children:t(za,{testId:"bridge-form",defaultAmount:e,defaultTokenAddress:a,isTokenBalancesLoading:p,defaultTokenImage:n,environment:c?.config.environment,theme:s})})}const $a={display:"flex",flexDirection:"column",alignItems:"center",paddingBottom:"base.spacing.x6",height:"100%",paddingX:"base.spacing.x6"},Ha={fontFamily:"base.font.family.heading.secondary",textAlign:"center",marginTop:"15px",paddingX:"base.spacing.x6"},Ka={...Ha,color:"base.color.text.body.secondary"},Ja={display:"flex",flexDirection:"column",justifyContent:"flex-end",gap:"base.spacing.x2",height:"100%",width:"100%"},ja={width:"100%",height:"base.spacing.x16"};function qa({environment:e,onCloseDrawer:a,visible:n,walletAddress:o,tokenSymbol:r,onAddCoinsClick:i}){const{t:c}=h(),[d,p]=l.useState(!1),w=he(e,"/notenougheth.svg"),g=he(e,"/notenoughimx.svg"),m=c("drawers.notEnoughGas.content.heading",{token:r.toUpperCase()}),v=c("drawers.notEnoughGas.content.body",{token:r.toUpperCase()}),x=l.useCallback((()=>{o&&""!==o&&navigator.clipboard.writeText(o),p(!0),setTimeout((()=>{p(!1)}),3e3)}),[o]);return t(le,{size:"threeQuarter",visible:n,showHeaderBar:!0,headerBarTitle:void 0,onCloseDrawer:a,children:u(le.Content,{testId:"not-enough-gas-bottom-sheet",sx:$a,children:[t(fe,{sx:{w:"90px",h:r===be?"110px":"90px"},use:t("img",{src:r===be?w:g,alt:m})}),t(se,{size:"small",weight:"bold",sx:Ha,testId:"not-enough-gas-heading",children:m}),t(s,{sx:Ka,children:v}),t(b,{sx:Ja,children:r===be?u(f,{testId:"not-enough-gas-copy-address-button",sx:ja,variant:"primary",onClick:x,children:[c("drawers.notEnoughGas.buttons.copyAddress"),t(f.Icon,{icon:d?"Tick":"CopyText"})]}):t(f,{testId:"not-enough-gas-add-imx-button",sx:ja,variant:"primary",onClick:i,children:c("drawers.notEnoughGas.buttons.addMoreImx")})})]})})}const Qa={borderBottomLeftRadius:"0px",borderBottomRightRadius:"0px",marginBottom:"2px",position:"relative"},Ya={borderTopLeftRadius:"0px",borderTopRightRadius:"0px",backgroundColor:"base.color.translucent.emphasis.100",position:"relative"},Xa={width:"base.icon.size.400"},Za={position:"absolute",top:"2px",left:"26px",width:"20px",padding:"2px",backgroundColor:"base.color.translucent.inverse.900",borderRadius:"base.borderRadius.x2"},en={height:"100%",display:"flex",flexDirection:"column",paddingX:"base.spacing.x4"},tn={paddingTop:"base.spacing.x10",paddingBottom:"base.spacing.x4"},an={display:"flex",flexDirection:"column",alignItems:"center",paddingY:"base.spacing.x1"},nn={width:"base.icon.size.300",transform:"rotate(270deg)"},sn={width:"base.icon.size.400"},on={backgroundColor:"base.color.translucent.standard.200",position:"absolute",width:"32px",height:"32px",padding:"6px",left:"base.spacing.x3"},rn={position:"absolute",right:"base.spacing.x3",w:"base.icon.size.400",h:"base.icon.size.400"},ln=(e,t,a,n)=>{const s=[];if(!e?.fees||!e.token)return s;let o=me.from(0);if(e.fees.bridgeFee&&(o=o.add(e.fees.bridgeFee)),e.fees.imtblFee&&(o=o.add(e.fees.imtblFee)),o.gt(0)&&s.push({label:n(t?"drawers.feesBreakdown.fees.serviceFee.depositLabel":"drawers.feesBreakdown.fees.serviceFee.withdrawLabel"),fiatAmount:`≈ ${n("drawers.feesBreakdown.fees.fiatPricePrefix")}${G(Qe(o,e.token.decimals),e.token.symbol,a.conversions)}`,amount:ue(Qe(o,e.token.decimals)),token:e.token}),e.fees.sourceChainGas?.gt(0)){const t=Qe(e.fees.sourceChainGas,e.token.decimals);s.push({label:n("drawers.feesBreakdown.fees.gasFeeMove.label"),fiatAmount:`≈ ${n("drawers.feesBreakdown.fees.fiatPricePrefix")}${G(t,e.token.symbol,a.conversions)}`,amount:`${ue(t)}`,prefix:"≈ ",token:e.token})}if(e.fees.approvalFee?.gt(0)){const t=Qe(e.fees.approvalFee,e.token.decimals);s.push({label:n("drawers.feesBreakdown.fees.approvalFee.label"),fiatAmount:`≈ ${n("drawers.feesBreakdown.fees.fiatPricePrefix")}${G(t,e.token.symbol,a.conversions)}`,amount:`${ue(t)}`,prefix:"≈ ",token:e.token})}return s},cn=(e,t)=>new ve(e,["function transfer(address to, uint amount)"],t),dn="bridge-review-summary";function un(){const{t:e}=h(),{viewDispatch:a}=l.useContext(C),{bridgeState:{checkout:n,tokenBridge:o,from:r,to:i,token:c,amount:d,tokenBalances:p},bridgeDispatch:g}=l.useContext(zt),{environment:m}=n.config,{track:v}=A(),{cryptoFiatState:x}=l.useContext(qe),[y,k]=l.useState(!1),[W,B]=l.useState(void 0),[M,F]=l.useState(""),[V,H]=l.useState(""),[J,j]=l.useState(void 0),[q,Q]=l.useState(void 0),[Y,X]=l.useState(!1),[Z,ee]=l.useState(void 0),[te,ae]=l.useState(void 0),[ne,oe]=l.useState(!1),[ie,le]=l.useState(!1),{isWalletConnectEnabled:ce,getWalletLogoUrl:de}=D(),[ue,pe]=l.useState(!1),ge=l.useMemo((()=>r?.network===i?.network),[r,i]),he=l.useMemo((()=>$(n.config)===i?.network),[r,i,n]),fe=l.useMemo((()=>{if(!W)return!1;if(!c)return!0;const e=p.find((e=>O(e.token.address)));let t=me.from(W.fees.totalFees);return O(c.address)&&(t=t.add(Xe(d,c.decimals))),!e||e.balance.lt(t)}),[p,W,c,d]),ve=l.useMemo((()=>c?.symbol?`${c?.symbol} ${d}`:`${d}`),[c,d]),ke=l.useMemo((()=>d&&c?G(d,c.symbol,x.conversions):""),[c,d]),Ce=l.useMemo((()=>r?r.walletAddress:"-"),[r]),Re=l.useMemo((()=>r&&r.network),[r]),_e=l.useMemo((()=>i?i.walletAddress:"-"),[i]),De=l.useMemo((()=>i?.network),[i]),Ne=l.useCallback((async()=>{if(!(o&&d&&r&&i&&c))return;const e=c?.address?.toLowerCase()??we.toUpperCase(),t={gasEstimateType:xe.BRIDGE_TO_L2,fees:{},token:n.config.networkMap.get(r.network)?.nativeCurrency};let a;if(e===we.toLowerCase())a=n.providerCall(r.web3Provider,(async e=>await e.estimateGas({to:_e,from:Ce,value:Xe(d,c.decimals)})));else{a=cn(e,r.web3Provider.getSigner()).estimateGas.transfer(_e,Xe(d,c.decimals))}try{const[e,n]=await Promise.all([a,r.web3Provider.getGasPrice()]),s=e.mul(n),o=Qe(s,Te);t.fees.sourceChainGas=s,t.fees.totalFees=s,B(t),F(o),H(G(o,we.toUpperCase(),x.conversions))}catch(e){console.error("Unable to fetch gas estimate",e)}}),[n,r,i,c,d]),Pe=l.useCallback((async()=>{if(!(o&&d&&r&&i&&c))return;const e=await o.getUnsignedBridgeBundledTx({senderAddress:Ce,recipientAddress:_e,token:c.address??we.toUpperCase(),amount:Xe(d,c.decimals),sourceChainId:r?.network.toString(),destinationChainId:i?.network.toString(),gasMultiplier:"auto"}),t={contractToApprove:e.contractToApprove,unsignedTx:e.unsignedApprovalTx},a={feeData:e.feeData,unsignedTx:e.unsignedBridgeTx};j(t),Q(a);const s=a.feeData,{totalFees:l,approvalFee:u}=s;let p=l;t.unsignedTx||(p=l.sub(u),s.approvalFee=me.from(0));const w={gasEstimateType:xe.BRIDGE_TO_L2,fees:{...s,totalFees:p},token:n.config.networkMap.get(r.network)?.nativeCurrency};B(w);const g=Qe(w?.fees.totalFees||0,Te);F(g),H(G(g,w?.token?.symbol||"",x.conversions))}),[n,o]);nt((()=>{ge?Ne():Pe()}),Ee);const Le=l.useCallback((()=>ln(W,he,x,e)),[W,he]);l.useEffect((()=>{(async()=>{k(!0),ge?await Ne():await Pe(),k(!1)})()}),[]);const We=l.useCallback((e=>{g({payload:{type:Ft.SET_WALLETS_AND_NETWORKS,from:{web3Provider:e,walletAddress:r?.walletAddress,walletProviderInfo:r?.walletProviderInfo,network:r?.network},to:{web3Provider:i?.web3Provider,walletAddress:i?.walletAddress,walletProviderInfo:i?.walletProviderInfo,network:i?.network}}})}),[r?.web3Provider,r?.network,i?.web3Provider,i?.network]);l.useEffect((()=>{if(!r?.web3Provider)return;const e=()=>{const e=new K(r?.web3Provider.provider);We(e),X(!1)};return ye(r?.web3Provider,e),()=>{Ie(r?.web3Provider,e)}}),[r?.web3Provider]),l.useEffect((()=>{if(ce){const e=N(r?.web3Provider),t=N(i?.web3Provider);oe(e),le(t),(async()=>{e&&ee(await de()),t&&ae(await de())})()}}),[ce,r?.web3Provider,i?.web3Provider]),l.useEffect((()=>{fe&&pe(!0)}),[fe]);const Oe=l.useCallback((async()=>{if(ge||J&&q)if(fe)pe(!0);else{try{const e=await(r?.web3Provider.provider).request({method:"eth_chainId",params:[]});if(parseInt(e.toString())!==r?.network)return void X(!0)}catch(e){console.error("Current network check failed",e)}v({userJourney:S.BRIDGE,screen:"Summary",control:"Submit",controlType:"Button",extras:{fromWalletAddress:Ce,fromNetwork:Re,fromWallet:{address:Ce,rdns:r?.walletProviderInfo?.rdns,uuid:r?.walletProviderInfo?.uuid,isPassportWallet:z(r?.web3Provider),isMetaMask:re(r?.web3Provider)},toWalletAddress:_e,toNetwork:De,toWallet:{address:_e,rdns:i?.walletProviderInfo?.rdns,uuid:i?.walletProviderInfo?.uuid,isPassportWallet:z(i?.web3Provider),isMetaMask:re(i?.web3Provider)},amount:d,fiatAmount:ke,tokenAddress:c?.address,moveType:ge?"transfer":"bridge"}}),a({payload:{type:_.UPDATE_VIEW,view:{type:je.APPROVE_TRANSACTION,approveTransaction:J,transaction:q}}})}}),[a,J,q,r?.web3Provider,r?.network,r?.walletProviderInfo,i?.web3Provider,i?.network,i?.walletProviderInfo]);return u(b,{testId:dn,sx:en,children:[t(se,{testId:`${dn}-heading`,size:"small",weight:"regular",sx:tn,children:e("views.BRIDGE_REVIEW.heading")}),u(w,{testId:`${dn}-from-amount`,size:"small",emphasized:!0,sx:Qa,children:[t(w.Label,{size:"small",sx:{marginBottom:"base.spacing.x4",fontWeight:"bold"},children:e("views.BRIDGE_REVIEW.fromLabel.amountHeading")}),t(w.Caption,{}),t(w.PriceDisplay,{use:t(se,{size:"xSmall",weight:"light"}),price:ve??"-",fiatAmount:`${e("views.BRIDGE_REVIEW.fiatPricePrefix")}${ke}`})]}),u(w,{testId:`${dn}-from-address`,size:"xSmall",emphasized:!0,sx:Ya,children:[ne&&Z?u(R,{children:[t(w.FramedImage,{imageUrl:Z,alt:"walletconnect",sx:Xa}),t(P,{logo:"WalletConnectSymbol",sx:Za})]}):r?.walletProviderInfo&&t(L,{src:r?.walletProviderInfo.icon,alt:r?.walletProviderInfo.name,sx:on}),u(w.Label,{sx:{marginLeft:ne&&Z?"0px":"45px"},children:[t("strong",{children:e("views.BRIDGE_REVIEW.fromLabel.heading")})," ",t(s,{size:"small",sx:{color:"base.color.text.body.secondary"},children:Ea(Ce??"")})]}),Re&&t(w.FramedImage,{use:t("img",{src:T(m,Re),alt:E[Re]}),sx:rn})]}),t(b,{sx:an,children:t(I,{icon:"ArrowBackward",sx:nn})}),u(w,{testId:`${dn}-to-address`,size:"xSmall",emphasized:!0,sx:Qa,children:[ie&&te?u(R,{children:[t(w.FramedImage,{imageUrl:te,alt:"walletconnect",sx:Xa}),t(P,{logo:"WalletConnectSymbol",sx:Za})]}):i?.walletProviderInfo&&t(L,{src:i?.walletProviderInfo.icon,alt:i?.walletProviderInfo.name,sx:on}),u(w.Label,{sx:{marginLeft:ie&&te?"0px":"45px"},children:[t("strong",{children:e("views.BRIDGE_REVIEW.toLabel.heading")})," ",t(s,{size:"small",sx:{color:"base.color.text.body.secondary"},children:Ea(_e??"")})]}),De&&t(w.FramedImage,{use:t("img",{src:T(m,De),alt:E[De]}),sx:rn})]}),t(ct,{gasFeeValue:M,gasFeeFiatValue:V,gasFeeToken:W?.token,fees:Le(),onFeesClick:()=>{v({userJourney:S.BRIDGE,screen:"MoveCoins",control:"ViewFees",controlType:"Button"})},sx:{borderTopRightRadius:"0",borderTopLeftRadius:"0"},loading:y}),t(b,{sx:{flex:1,display:"flex",flexDirection:"column",justifyContent:"flex-end",paddingY:"base.spacing.x6",width:"100%"},children:W&&!y&&t(f,{size:"large",sx:{width:"100%"},onClick:Oe,disabled:y,testId:`${dn}__submit-button`,children:y?t(f.Icon,{icon:"Loading",sx:sn}):e("views.BRIDGE_REVIEW.submitButton.buttonText")})}),t(dt,{visible:Y,targetChainId:r?.network,provider:r?.web3Provider,checkout:n,onCloseDrawer:()=>X(!1),onNetworkSwitch:We}),t(qa,{environment:n.config.environment,visible:ue,onCloseDrawer:()=>pe(!1),walletAddress:r?.walletAddress||"",tokenSymbol:r?.network===U(n?.config)?be:Ae,onAddCoinsClick:()=>{a({payload:{type:_.UPDATE_VIEW,view:{type:Se.TOP_UP_VIEW}}})}})]})}function pn(){const{t:e}=h(),{eventTargetState:{eventTarget:a}}=l.useContext(F),{page:n}=A();return l.useEffect((()=>{n({userJourney:S.BRIDGE,screen:"Review"})}),[]),t(Y,{testId:"bridge-review",header:t(j,{showBack:!0,title:e("views.BRIDGE_REVIEW.layoutHeading"),onCloseButtonClick:()=>$t(a)}),footer:t(q,{}),children:t(un,{})})}function wn({environment:e}){const{RiveComponent:a}=ke.useRive({src:`${Ce[e]}/v1/blob/img/rocket.riv`,autoplay:!0,layout:new ke.Layout({fit:ke.Fit.Cover}),stateMachines:"State Machine 1"});return t(b,{sx:{...Re,background:"base.color.translucent.emphasis.100"},children:t(b,{sx:_e,rc:t(a,{})})})}function gn({transactionHash:e,isTransfer:a}){const{t:n}=h(),{eventTargetState:{eventTarget:s}}=l.useContext(F),{page:o}=A(),{cryptoFiatState:r}=l.useContext(qe),{viewDispatch:i}=l.useContext(C),{bridgeState:{checkout:c,from:d,to:p,token:w,amount:g}}=l.useContext(zt);return l.useEffect((()=>{Vt(s,e);const t=G(g,w?.symbol??"",r.conversions);o({userJourney:S.BRIDGE,screen:"InProgress",extras:{fromWalletAddress:d?.walletAddress,toWalletAddress:p?.walletAddress,amount:g,fiatAmount:t,tokenAddress:w?.address,moveType:a?"transfer":"bridge"}})}),[]),t(Y,{testId:"move-in-progress-view",header:t(j,{transparent:!0,onCloseButtonClick:()=>$t(s),rightActions:u(R,{children:[t(ce,{icon:"Minting",sx:de(),onClick:()=>{i({payload:{type:_.UPDATE_VIEW,view:{type:je.TRANSACTIONS}}})},testId:"settings-button"}),!a&&t(De,{isAnimated:!0,variant:"guidance",sx:{position:"absolute",right:"base.spacing.x14",top:"base.spacing.x1"}})]})}),footer:t(q,{}),heroContent:t(wn,{environment:c.config.environment}),floatHeader:!0,children:u(Ne,{heading:n(a?"views.IN_PROGRESS.transferHeading":"views.IN_PROGRESS.heading"),children:[!a&&u(R,{children:[n("views.IN_PROGRESS.body1"),t("br",{}),t("br",{})]}),n("views.IN_PROGRESS.body2")]})})}function hn({bridgeTransaction:e}){const{t:a}=h(),{bridgeState:n}=l.useContext(zt),{checkout:s,from:o,to:i,token:c,amount:d}=n,{viewDispatch:p}=l.useContext(C),{eventTargetState:{eventTarget:w}}=l.useContext(F),{page:g}=A();l.useEffect((()=>{g({userJourney:S.BRIDGE,screen:"ApproveTransaction",extras:{moveType:e?"bridge":"transfer"}})}),[]);const[f,m]=l.useState(!1),[v,x]=l.useState(!1),[T,E]=l.useState(!1),[y,I]=l.useState(!1),k=l.useCallback((()=>{p({payload:{type:_.UPDATE_VIEW,view:{type:Se.ERROR_VIEW,error:new Error("No checkout object or no provider object found")}}})}),[p]),D=l.useCallback((()=>{p({payload:{type:_.GO_BACK}})}),[p]),N=e=>{if(e.type!==r.UNPREDICTABLE_GAS_LIMIT){if(e.type===r.TRANSACTION_FAILED||e.type===r.INSUFFICIENT_FUNDS||e.receipt&&0===e.receipt.status){let t="Transaction failed";return e.type===r.INSUFFICIENT_FUNDS&&(t="Insufficient funds"),e.receipt&&0===e.receipt.status&&(t="Transaction failed to settle on chain"),void p({payload:{type:_.UPDATE_VIEW,view:{type:je.BRIDGE_FAILURE,reason:t}}})}p({payload:{type:_.UPDATE_VIEW,view:{type:Se.ERROR_VIEW,error:e}}})}else p({payload:{type:_.UPDATE_VIEW,view:{type:je.BRIDGE_FAILURE,reason:"Unpredictable gas limit"}}})},P=l.useCallback((async()=>{if(!s||!o?.web3Provider)return void k();if(f)return;m(!0),x(!0);const e=c?.address?.toLowerCase()??we.toUpperCase();let t;try{if(e===we.toLowerCase()){const e={to:i?.walletAddress,value:Xe(d,c?.decimals)};t=(await s.sendTransaction({provider:o.web3Provider,transaction:e})).transactionResponse.hash}else{const a=cn(e,o.web3Provider.getSigner()),n=Xe(d,c?.decimals);t=(await s.providerCall(o.web3Provider,(async()=>await a.transfer(i?.walletAddress,n)))).hash}p({payload:{type:_.UPDATE_VIEW,view:{type:je.IN_PROGRESS,transactionHash:t,isTransfer:!0}}})}catch(e){x(!1),e.type===r.USER_REJECTED_REQUEST_ERROR?I(!0):N(e)}finally{m(!1)}}),[s,o,k,p,f]),L=l.useCallback((async()=>{let t=!1;const{approveTransaction:a,transaction:n}=e;if(s&&o?.web3Provider&&n){if(!f){if(m(!0),a.unsignedTx)try{x(!0);const e=await s.sendTransaction({provider:o.web3Provider,transaction:a.unsignedTx});if(1!==(await e.transactionResponse.wait()).status)return void p({payload:{type:_.UPDATE_VIEW,view:{type:je.BRIDGE_FAILURE,reason:"Transaction failed to settle on chain"}}})}catch(e){x(!1),e.type===r.USER_REJECTED_REQUEST_ERROR?(I(!0),t=!0):N(e)}finally{m(!1)}try{if(t)return;x(!0);const e=await s.sendTransaction({provider:o.web3Provider,transaction:n.unsignedTx});p({payload:{type:_.UPDATE_VIEW,view:{type:je.IN_PROGRESS,transactionHash:e.transactionResponse.hash,isTransfer:!1}}});0===(await e.transactionResponse.wait()).status&&p({payload:{type:_.UPDATE_VIEW,view:{type:je.BRIDGE_FAILURE,reason:"Approval transaction failed to settle on chain"}}})}catch(e){e.type===r.USER_REJECTED_REQUEST_ERROR?I(!0):N(e)}finally{E(!1),x(!1),m(!1)}}}else k()}),[s,o,k,p,e,f]);return u(R,{children:[T&&t(te,{loadingText:a("views.APPROVE_TRANSACTION.loadingView.text")}),!T&&t(Y,{header:t(j,{transparent:!0,showBack:!0,onCloseButtonClick:()=>$t(w),onBackButtonClick:D}),floatHeader:!0,heroContent:t(ut,{}),footer:u(b,{sx:{width:"100%",flexDirection:"column"},children:[t(Pe,{loading:v,actionText:a("views.APPROVE_TRANSACTION."+(y?"footer.retryText":"footer.buttonText")),onActionClick:e?L:P}),t(q,{})]}),children:t(Ne,{heading:a("views.APPROVE_TRANSACTION.content.heading"),children:t(b,{children:a("views.APPROVE_TRANSACTION.content.body")})})})]})}const fn={display:"flex",flexDirection:"column",alignItems:"center",paddingTop:"base.spacing.x6",paddingBottom:"base.spacing.x1",height:"100%"},bn={color:"base.color.text.body.secondary",fontFamily:"base.font.family.heading.secondary",textAlign:"center",marginTop:"15px"},mn={display:"flex",flexDirection:"column",justifyContent:"center",gap:"base.spacing.x2",height:"100%",width:"100%"},vn={width:"100%",height:"base.spacing.x16"};function xn({visible:e,onClose:a,onChangeAccount:n}){const{t:o}=h(),{bridgeState:{checkout:r}}=l.useContext(zt),i=Le(r.config.environment);return t(le,{headerBarTitle:void 0,size:"full",onCloseDrawer:a,visible:e,showHeaderBar:!1,children:t(le.Content,{children:u(b,{testId:"not-enough-eth-drawer",sx:fn,children:[t(fe,{sx:{w:"base.icon.size.600",h:"base.icon.size.600"},use:t("img",{src:i,alt:"ETH"})}),t(se,{size:"small",sx:bn,testId:"not-enough-gas-heading",children:`${o("drawers.notEnoughEthWithdrawal.content.heading1")} ${be} ${o("drawers.notEnoughEthWithdrawal.content.heading2")}`}),t(s,{sx:bn,children:`${o("drawers.notEnoughEthWithdrawal.content.body1")} ${be} ${o("drawers.notEnoughEthWithdrawal.content.body2")}`}),u(b,{sx:mn,children:[t(f,{testId:"not-enough-eth-drawer-retry-button",sx:vn,variant:"tertiary",onClick:n,children:o("drawers.notEnoughEthWithdrawal.buttons.retry")}),t(f,{sx:vn,variant:"tertiary",onClick:a,testId:"not-enough-eth-drawer-dismiss-button",children:o("drawers.notEnoughEthWithdrawal.buttons.dismiss")})]})]})})})}function Tn({transaction:e}){const{t:a}=h(),{bridgeState:{checkout:n,tokenBridge:s,from:o}}=l.useContext(zt),{viewDispatch:r}=l.useContext(C),{eventTargetState:{eventTarget:i}}=l.useContext(F),{page:c}=A();l.useEffect((()=>{c({userJourney:S.BRIDGE,screen:"ClaimWithdrawal"})}),[]);const[d,p]=l.useState(!1),[w,g]=l.useState(!1),[m,v]=l.useState(!1),[x,T]=l.useState(),[E,y]=l.useState(!1),I=l.useCallback((()=>{r({payload:{type:_.GO_BACK}})}),[r]);l.useEffect((()=>{(async()=>{if(s&&e&&void 0!==e.details.current_status?.index){g(!0);try{const t=await(s?.getFlowRateWithdrawTx({recipient:e.details.to_address,index:e.details.current_status.index}));T(t)}catch(e){console.log(e)}finally{g(!1)}}})()}),[s,e]);const k=l.useCallback((async({forceChangeAccount:e})=>{if(!(n&&s&&o?.web3Provider&&x))return;if(!x.pendingWithdrawal.canWithdraw||!x.unsignedTx)return void console.log(`Unable to process withdrawal transaction as it is not ready yet. Delay timeout at ${x.pendingWithdrawal.timeoutEnd} `);let t=o?.web3Provider;const a=U(n.config);if(p(!0),z(o?.web3Provider)||e)try{const e=await n.createProvider({walletProviderName:ie.METAMASK});t=(await n.connect({provider:e.provider,requestWalletPermissions:!0})).provider,y(!1)}catch(e){return console.log(e),v(!0),void p(!1)}let i,l=null;try{try{i=await t.estimateGas(x.unsignedTx)}catch(e){i=me.from(We)}let e=null;try{e=await t.getFeeData()}catch(e){console.log(e)}let a=null;e&&e.lastBaseFeePerGas&&e.maxPriorityFeePerGas?a=e.lastBaseFeePerGas.add(e.maxPriorityFeePerGas):e&&e.gasPrice&&(a=e.gasPrice),a&&(l=i.mul(a))}catch(e){console.log(e)}try{const e=(await n.getAllBalances({provider:t,chainId:a})).balances.find((e=>O(e.token.address)));if(!e||e.balance.lt(l))return y(!0),void p(!1)}catch(e){console.log(e)}if((await t.getNetwork()).chainId!==a)try{t=(await n.switchNetwork({provider:t,chainId:a})).provider}catch(e){return v(!0),g(!1),void console.log(e)}try{const e=await n.sendTransaction({provider:t,transaction:x.unsignedTx});r({payload:{type:_.UPDATE_VIEW,view:{type:je.CLAIM_WITHDRAWAL_IN_PROGRESS,transactionResponse:e.transactionResponse}}})}catch(e){console.log(e),v(!0),p(!1)}finally{p(!1)}}),[s,o,x]);return u(Y,{testId:"claim-withdrawal",header:t(j,{transparent:!0,showBack:!0,onCloseButtonClick:()=>$t(i),onBackButtonClick:I}),floatHeader:!0,heroContent:t(ut,{}),footer:u(b,{sx:{width:"100%",display:"flex",flexDirection:"column"},children:[t(b,{sx:{pb:"base.spacing.x5",px:"base.spacing.x6",width:"100%",display:"flex",flexDirection:"column"},children:t(f,{testId:"claim-withdrawal-continue-button",size:"large",variant:"primary",disabled:w,onClick:()=>d||w?void 0:k({forceChangeAccount:!0}),children:w||d?t(f.Icon,{icon:"Loading",sx:{width:"base.icon.size.400"}}):a("views.CLAIM_WITHDRAWAL."+(m?"footer.retryText":"footer.buttonText"))})}),t(q,{})]}),children:[u(Ne,{heading:`${a("views.CLAIM_WITHDRAWAL.content.heading")} ${ne(U(n.config))}`,children:[t(b,{sx:{display:"flex",flexWrap:"wrap",pb:"base.spacing.x1"},children:a("views.CLAIM_WITHDRAWAL.content.body")}),u(b,{children:[a("views.CLAIM_WITHDRAWAL.content.body2"),t(Lt,{text:e.details.to_address.toLowerCase()??""})]})]}),t(xn,{visible:E,onClose:()=>y(!1),onChangeAccount:()=>k({forceChangeAccount:!0})})]})}function En({checkout:e,web3Provider:a,config:n,amount:s,tokenAddress:o}){const{t:r}=h(),{environment:i,isOnRampEnabled:p,isSwapEnabled:w,isBridgeEnabled:g,theme:f}=n,b=Oe(e.config.environment,f),{eventTargetState:{eventTarget:m}}=l.useContext(F),{page:v}=A(),[x,T]=l.useReducer(Be,{...Me,view:{type:je.WALLET_NETWORK_SELECTION},history:[{type:je.WALLET_NETWORK_SELECTION}]}),[E,y]=l.useReducer(Ut,{...Gt,checkout:e,web3Provider:a??null,tokenBridge:(()=>{let t=He;e.config.isDevelopment&&(t=Ke),e.config.isProduction&&(t=Je);const a=new Z(e.config.networkMap.get(U(e.config))?.rpcUrls[0]),n=new Z(e.config.networkMap.get($(e.config))?.rpcUrls[0]),s=new Ge({baseConfig:new Fe({environment:e.config.environment}),bridgeInstance:t,rootProvider:a,childProvider:n});return new ze(s)})()}),I=l.useMemo((()=>({viewState:x,viewDispatch:T})),[x,T]),k=l.useMemo((()=>({bridgeState:E,bridgeDispatch:y})),[E,y]),R=l.useCallback((()=>{y({payload:{type:Ft.SET_WALLETS_AND_NETWORKS,from:null,to:null}}),y({payload:{type:Ft.SET_TOKEN_AND_AMOUNT,amount:"",token:null}}),T({payload:{type:_.GO_BACK_TO,view:{type:je.WALLET_NETWORK_SELECTION}}})}),[T]),D=l.useCallback((()=>{T({payload:{type:_.GO_BACK_TO,view:{type:je.WALLET_NETWORK_SELECTION}}})}),[T]),N=l.useCallback((()=>{T({payload:{type:_.UPDATE_VIEW,view:{type:je.TRANSACTIONS}}})}),[T]),P=l.useCallback((()=>{T({payload:{type:_.GO_BACK_TO,view:{type:je.BRIDGE_REVIEW}}})}),[T]);return l.useEffect((()=>{(async()=>{y({payload:{type:Ft.SET_PROVIDER,web3Provider:a??null}})})()}),[a]),t(C.Provider,{value:I,children:t(zt.Provider,{value:k,children:u(et,{environment:i,children:[x.view.type===je.WALLET_NETWORK_SELECTION&&t(Wa,{}),x.view.type===je.BRIDGE_FORM&&t(Va,{amount:s,tokenAddress:o,defaultTokenImage:b,theme:f}),x.view.type===je.BRIDGE_REVIEW&&t(pn,{}),x.view.type===je.IN_PROGRESS&&t(gn,{transactionHash:x.view.transactionHash,isTransfer:x.view.isTransfer}),x.view.type===je.BRIDGE_FAILURE&&t(Ue,{testId:"bridge-fail",statusText:r("views.BRIDGE_FAILURE.bridgeFailureText.statusText"),actionText:r("views.BRIDGE_FAILURE.bridgeFailureText.actionText"),onActionClick:P,statusType:Ve.FAILURE,onRenderEvent:()=>{let e="";x.view.type===je.BRIDGE_FAILURE&&(e=x.view.reason),v({userJourney:S.BRIDGE,screen:"Failed",extras:{reason:e}}),((e,t)=>{const a=new CustomEvent(c.IMTBL_BRIDGE_WIDGET_EVENT,{detail:{type:d.FAILURE,data:{reason:t,timestamp:(new Date).getTime()}}});console.log("bridge failed ",e,a),void 0!==e&&e.dispatchEvent(a)})(m,e)}}),x.view.type===je.APPROVE_TRANSACTION&&t(hn,{bridgeTransaction:x.view.approveTransaction&&x.view.transaction?{approveTransaction:x.view.approveTransaction,transaction:x.view.transaction}:void 0}),x.view.type===je.TRANSACTIONS&&t(xa,{onBackButtonClick:D,defaultTokenImage:b}),x.view.type===je.CLAIM_WITHDRAWAL&&t(Tn,{transaction:x.view.transaction}),x.view.type===Se.ERROR_VIEW&&t($e,{actionText:r("views.ERROR_VIEW.actionText"),onActionClick:R,onCloseClick:()=>$t(m),errorEventAction:()=>{v({userJourney:S.BRIDGE,screen:"Error"})}}),x.view.type===Se.TOP_UP_VIEW&&t(Ze,{analytics:{userJourney:S.BRIDGE},widgetEvent:c.IMTBL_BRIDGE_WIDGET_EVENT,checkout:e,provider:a,showOnrampOption:p,showSwapOption:w,showBridgeOption:g,onCloseButtonClick:()=>$t(m)}),x.view.type===je.CLAIM_WITHDRAWAL_IN_PROGRESS&&t(Ta,{transactionResponse:x.view.transactionResponse}),x.view.type===je.CLAIM_WITHDRAWAL_SUCCESS&&t(Ue,{statusText:r("views.CLAIM_WITHDRAWAL.IN_PROGRESS.success.text"),actionText:r("views.CLAIM_WITHDRAWAL.IN_PROGRESS.success.actionText"),onRenderEvent:()=>{v({userJourney:S.BRIDGE,screen:"ClaimWithdrawalSuccess"}),((e,t)=>{const a=new CustomEvent(c.IMTBL_BRIDGE_WIDGET_EVENT,{detail:{type:d.CLAIM_WITHDRAWAL_SUCCESS,data:{transactionHash:t}}});console.log("bridge claim withdrawal success event:",e,a),void 0!==e&&e.dispatchEvent(a)})(m,x.view.transactionHash)},onActionClick:N,statusType:Ve.SUCCESS,testId:"claim-withdrawal-success-view"}),x.view.type===je.CLAIM_WITHDRAWAL_FAILURE&&t(Ue,{statusText:r("views.CLAIM_WITHDRAWAL.IN_PROGRESS.failure.text"),actionText:r("views.CLAIM_WITHDRAWAL.IN_PROGRESS.failure.actionText"),onRenderEvent:()=>{let e="";x.view.type===je.CLAIM_WITHDRAWAL_FAILURE&&(e=x.view.reason),v({userJourney:S.BRIDGE,screen:"ClaimWithdrawalFailure",extras:{reason:e}}),((e,t,a)=>{const n=new CustomEvent(c.IMTBL_BRIDGE_WIDGET_EVENT,{detail:{type:d.CLAIM_WITHDRAWAL_FAILURE,data:{transactionHash:t,reason:a,timestamp:(new Date).getTime()}}});console.log("bridge claim withdrawal failed event:",e,n),void 0!==e&&e.dispatchEvent(n)})(m,x.view.transactionHash,"Transaction failed")},onActionClick:N,statusType:Ve.FAILURE,onCloseClick:()=>$t(m),testId:"claim-withdrawal-fail-view"})]})})})}export{En as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{bx as e,by as t,bz as a,bA as r,bB as n,t as o,r as s,q as i,E as h,l as c,V as u,L as l,bC as p,j as f,a3 as d,$ as m,bD as R,a as E,U as v,p as A,a2 as S,n as O,ae as T,ah as y,ai as _,bh as I,aj as C,bE as g,aL as w,bt as N,bF as P,I as b}from"./index-
|
|
1
|
+
import{bx as e,by as t,bz as a,bA as r,bB as n,t as o,r as s,q as i,E as h,l as c,V as u,L as l,bC as p,j as f,a3 as d,$ as m,bD as R,a as E,U as v,p as A,a2 as S,n as O,ae as T,ah as y,ai as _,bh as I,aj as C,bE as g,aL as w,bt as N,bF as P,I as b}from"./index-48317d33.js";import{O as D,T as L}from"./TopUpView-1ee8b40b.js";import{S as x}from"./SpendingCapHero-140d6190.js";
|
|
2
2
|
/*! https://mths.be/punycode v1.4.1 by @mathias */var U=2147483647,k=36,K=1,F=26,j=38,M=700,G=72,W=128,q="-",V=/[^\x20-\x7E]/,$=/[\x2E\u3002\uFF0E\uFF61]/g,B={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},J=k-K,H=Math.floor,z=String.fromCharCode;function Z(e){throw new RangeError(B[e])}function Q(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function X(e,t,a){var r=0;for(e=a?H(e/M):e>>1,e+=H(e/t);e>J*F>>1;r+=k)e=H(e/J);return H(r+(J+1)*e/(e+j))}function Y(e){return function(e,t){var a=e.split("@"),r="";a.length>1&&(r=a[0]+"@",e=a[1]);var n=function(e,t){for(var a=e.length,r=[];a--;)r[a]=t(e[a]);return r}((e=e.replace($,".")).split("."),t).join(".");return r+n}(e,(function(e){return V.test(e)?"xn--"+function(e){var t,a,r,n,o,s,i,h,c,u,l,p,f,d,m,R=[];for(e=function(e){for(var t,a,r=[],n=0,o=e.length;n<o;)(t=e.charCodeAt(n++))>=55296&&t<=56319&&n<o?56320==(64512&(a=e.charCodeAt(n++)))?r.push(((1023&t)<<10)+(1023&a)+65536):(r.push(t),n--):r.push(t);return r}(e),p=e.length,t=W,a=0,o=G,s=0;s<p;++s)(l=e[s])<128&&R.push(z(l));for(r=n=R.length,n&&R.push(q);r<p;){for(i=U,s=0;s<p;++s)(l=e[s])>=t&&l<i&&(i=l);for(i-t>H((U-a)/(f=r+1))&&Z("overflow"),a+=(i-t)*f,t=i,s=0;s<p;++s)if((l=e[s])<t&&++a>U&&Z("overflow"),l==t){for(h=a,c=k;!(h<(u=c<=o?K:c>=o+F?F:c-o));c+=k)m=h-u,d=k-u,R.push(z(Q(u+m%d,0))),h=H(m/d);R.push(z(Q(h,0))),o=X(a,f,r==n),a=0,++r}++a,++t}return R.join("")}(e):e}))}function ee(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var te=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)};function ae(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}}function re(e,t){if(e.map)return e.map(t);for(var a=[],r=0;r<e.length;r++)a.push(t(e[r],r));return a}var ne=Object.keys||function(e){var t=[];for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.push(a);return t};function oe(e,t,a,r){t=t||"&",a=a||"=";var n={};if("string"!=typeof e||0===e.length)return n;var o=/\+/g;e=e.split(t);var s=1e3;r&&"number"==typeof r.maxKeys&&(s=r.maxKeys);var i=e.length;s>0&&i>s&&(i=s);for(var h=0;h<i;++h){var c,u,l,p,f=e[h].replace(o,"%20"),d=f.indexOf(a);d>=0?(c=f.substr(0,d),u=f.substr(d+1)):(c=f,u=""),l=decodeURIComponent(c),p=decodeURIComponent(u),ee(n,l)?te(n[l])?n[l].push(p):n[l]=[n[l],p]:n[l]=p}return n}var se={parse:Oe,resolve:function(e,t){return Oe(e,!1,!0).resolve(t)},resolveObject:function(e,t){return e?Oe(e,!1,!0).resolveObject(t):t},fileURLToPath:function(e){if("string"==typeof e)e=(new ie).parse(e);else if(!(e instanceof ie))throw new TypeError('The "path" argument must be of type string or an instance of URL. Received type '+typeof e+String(e));if("file:"!==e.protocol)throw new TypeError("The URL must be of scheme file");return function(e){const t=e.pathname;for(let e=0;e<t.length;e++)if("%"===t[e]){const a=32|t.codePointAt(e+2);if("2"===t[e+1]&&102===a)throw new TypeError("must not include encoded / characters")}return decodeURIComponent(t)}(e)},format:function(e){a(e)&&(e=Te({},e));return ye(e)},Url:ie,URL:e.URL,URLSearchParams:e.URLSearchParams};function ie(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}var he=/^([a-z0-9.+-]+:)/i,ce=/:[0-9]*$/,ue=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,le=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),pe=["'"].concat(le),fe=["%","/","?",";","#"].concat(pe),de=["/","?","#"],me=255,Re=/^[+a-z0-9A-Z_-]{0,63}$/,Ee=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,ve={javascript:!0,"javascript:":!0},Ae={javascript:!0,"javascript:":!0},Se={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0};function Oe(e,a,r){if(e&&t(e)&&e instanceof ie)return e;var n=new ie;return n.parse(e,a,r),n}function Te(e,t,r,n){if(!a(t))throw new TypeError("Parameter 'url' must be a string, not "+typeof t);var o=t.indexOf("?"),s=-1!==o&&o<t.indexOf("#")?"?":"#",i=t.split(s);i[0]=i[0].replace(/\\/g,"/");var h=t=i.join(s);if(h=h.trim(),!n&&1===t.split("#").length){var c=ue.exec(h);if(c)return e.path=h,e.href=h,e.pathname=c[1],c[2]?(e.search=c[2],e.query=r?oe(e.search.substr(1)):e.search.substr(1)):r&&(e.search="",e.query={}),e}var u,l,p,f,d=he.exec(h);if(d){var m=(d=d[0]).toLowerCase();e.protocol=m,h=h.substr(d.length)}if(n||d||h.match(/^\/\/[^@\/]+@[^@\/]+/)){var R="//"===h.substr(0,2);!R||d&&Ae[d]||(h=h.substr(2),e.slashes=!0)}if(!Ae[d]&&(R||d&&!Se[d])){var E,v,A=-1;for(u=0;u<de.length;u++)-1!==(l=h.indexOf(de[u]))&&(-1===A||l<A)&&(A=l);for(-1!==(v=-1===A?h.lastIndexOf("@"):h.lastIndexOf("@",A))&&(E=h.slice(0,v),h=h.slice(v+1),e.auth=decodeURIComponent(E)),A=-1,u=0;u<fe.length;u++)-1!==(l=h.indexOf(fe[u]))&&(-1===A||l<A)&&(A=l);-1===A&&(A=h.length),e.host=h.slice(0,A),h=h.slice(A),_e(e),e.hostname=e.hostname||"";var S="["===e.hostname[0]&&"]"===e.hostname[e.hostname.length-1];if(!S){var O=e.hostname.split(/\./);for(u=0,p=O.length;u<p;u++){var T=O[u];if(T&&!T.match(Re)){for(var y="",_=0,I=T.length;_<I;_++)T.charCodeAt(_)>127?y+="x":y+=T[_];if(!y.match(Re)){var C=O.slice(0,u),g=O.slice(u+1),w=T.match(Ee);w&&(C.push(w[1]),g.unshift(w[2])),g.length&&(h="/"+g.join(".")+h),e.hostname=C.join(".");break}}}}e.hostname.length>me?e.hostname="":e.hostname=e.hostname.toLowerCase(),S||(e.hostname=Y(e.hostname)),f=e.port?":"+e.port:"";var N=e.hostname||"";e.host=N+f,e.href+=e.host,S&&(e.hostname=e.hostname.substr(1,e.hostname.length-2),"/"!==h[0]&&(h="/"+h))}if(!ve[m])for(u=0,p=pe.length;u<p;u++){var P=pe[u];if(-1!==h.indexOf(P)){var b=encodeURIComponent(P);b===P&&(b=escape(P)),h=h.split(P).join(b)}}var D=h.indexOf("#");-1!==D&&(e.hash=h.substr(D),h=h.slice(0,D));var L=h.indexOf("?");if(-1!==L?(e.search=h.substr(L),e.query=h.substr(L+1),r&&(e.query=oe(e.query)),h=h.slice(0,L)):r&&(e.search="",e.query={}),h&&(e.pathname=h),Se[m]&&e.hostname&&!e.pathname&&(e.pathname="/"),e.pathname||e.search){f=e.pathname||"";var x=e.search||"";e.path=f+x}return e.href=ye(e),e}function ye(e){var a=e.auth||"";a&&(a=(a=encodeURIComponent(a)).replace(/%3A/i,":"),a+="@");var r,n,o,s,i=e.protocol||"",h=e.pathname||"",c=e.hash||"",u=!1,l="";e.host?u=a+e.host:e.hostname&&(u=a+(-1===e.hostname.indexOf(":")?e.hostname:"["+this.hostname+"]"),e.port&&(u+=":"+e.port)),e.query&&t(e.query)&&Object.keys(e.query).length&&(r=e.query,n=n||"&",o=o||"=",null===r&&(r=void 0),l="object"==typeof r?re(ne(r),(function(e){var t=encodeURIComponent(ae(e))+o;return te(r[e])?re(r[e],(function(e){return t+encodeURIComponent(ae(e))})).join(n):t+encodeURIComponent(ae(r[e]))})).join(n):s?encodeURIComponent(ae(s))+o+encodeURIComponent(ae(r)):"");var p=e.search||l&&"?"+l||"";return i&&":"!==i.substr(-1)&&(i+=":"),e.slashes||(!i||Se[i])&&!1!==u?(u="//"+(u||""),h&&"/"!==h.charAt(0)&&(h="/"+h)):u||(u=""),c&&"#"!==c.charAt(0)&&(c="#"+c),p&&"?"!==p.charAt(0)&&(p="?"+p),i+u+(h=h.replace(/[?#]/g,(function(e){return encodeURIComponent(e)})))+(p=p.replace("#","%23"))+c}function _e(e){var t=e.host,a=ce.exec(t);a&&(":"!==(a=a[0])&&(e.port=a.substr(1)),t=t.substr(0,t.length-a.length)),t&&(e.hostname=t)}ie.prototype.parse=function(e,t,a){return Te(this,e,t,a)},ie.prototype.format=function(){return ye(this)},ie.prototype.resolve=function(e){return this.resolveObject(Oe(e,!1,!0)).format()},ie.prototype.resolveObject=function(e){if(a(e)){var t=new ie;t.parse(e,!1,!0),e=t}for(var o,s=new ie,i=Object.keys(this),h=0;h<i.length;h++){var c=i[h];s[c]=this[c]}if(s.hash=e.hash,""===e.href)return s.href=s.format(),s;if(e.slashes&&!e.protocol){for(var u=Object.keys(e),l=0;l<u.length;l++){var p=u[l];"protocol"!==p&&(s[p]=e[p])}return Se[s.protocol]&&s.hostname&&!s.pathname&&(s.path=s.pathname="/"),s.href=s.format(),s}if(e.protocol&&e.protocol!==s.protocol){if(!Se[e.protocol]){for(var f=Object.keys(e),d=0;d<f.length;d++){var m=f[d];s[m]=e[m]}return s.href=s.format(),s}if(s.protocol=e.protocol,e.host||Ae[e.protocol])s.pathname=e.pathname;else{for(o=(e.pathname||"").split("/");o.length&&!(e.host=o.shift()););e.host||(e.host=""),e.hostname||(e.hostname=""),""!==o[0]&&o.unshift(""),o.length<2&&o.unshift(""),s.pathname=o.join("/")}if(s.search=e.search,s.query=e.query,s.host=e.host||"",s.auth=e.auth,s.hostname=e.hostname||e.host,s.port=e.port,s.pathname||s.search){var R=s.pathname||"",E=s.search||"";s.path=R+E}return s.slashes=s.slashes||e.slashes,s.href=s.format(),s}var v,A=s.pathname&&"/"===s.pathname.charAt(0),S=e.host||e.pathname&&"/"===e.pathname.charAt(0),O=S||A||s.host&&e.pathname,T=O,y=s.pathname&&s.pathname.split("/")||[],_=s.protocol&&!Se[s.protocol];if(o=e.pathname&&e.pathname.split("/")||[],_&&(s.hostname="",s.port=null,s.host&&(""===y[0]?y[0]=s.host:y.unshift(s.host)),s.host="",e.protocol&&(e.hostname=null,e.port=null,e.host&&(""===o[0]?o[0]=e.host:o.unshift(e.host)),e.host=null),O=O&&(""===o[0]||""===y[0])),S)s.host=e.host||""===e.host?e.host:s.host,s.hostname=e.hostname||""===e.hostname?e.hostname:s.hostname,s.search=e.search,s.query=e.query,y=o;else if(o.length)y||(y=[]),y.pop(),y=y.concat(o),s.search=e.search,s.query=e.query;else if(!r(e.search))return _&&(s.hostname=s.host=y.shift(),(v=!!(s.host&&s.host.indexOf("@")>0)&&s.host.split("@"))&&(s.auth=v.shift(),s.host=s.hostname=v.shift())),s.search=e.search,s.query=e.query,n(s.pathname)&&n(s.search)||(s.path=(s.pathname?s.pathname:"")+(s.search?s.search:"")),s.href=s.format(),s;if(!y.length)return s.pathname=null,s.search?s.path="/"+s.search:s.path=null,s.href=s.format(),s;for(var I=y.slice(-1)[0],C=(s.host||e.host||y.length>1)&&("."===I||".."===I)||""===I,g=0,w=y.length;w>=0;w--)"."===(I=y[w])?y.splice(w,1):".."===I?(y.splice(w,1),g++):g&&(y.splice(w,1),g--);if(!O&&!T)for(;g--;g)y.unshift("..");!O||""===y[0]||y[0]&&"/"===y[0].charAt(0)||y.unshift(""),C&&"/"!==y.join("/").substr(-1)&&y.push("");var N=""===y[0]||y[0]&&"/"===y[0].charAt(0);return _&&(s.hostname=s.host=N?"":y.length?y.shift():"",(v=!!(s.host&&s.host.indexOf("@")>0)&&s.host.split("@"))&&(s.auth=v.shift(),s.host=s.hostname=v.shift())),(O=O||s.host&&y.length)&&!N&&y.unshift(""),y.length?s.pathname=y.join("/"):(s.pathname=null,s.path=null),n(s.pathname)&&n(s.search)||(s.path=(s.pathname?s.pathname:"")+(s.search?s.search:"")),s.auth=e.auth||s.auth,s.slashes=s.slashes||e.slashes,s.href=s.format(),s},ie.prototype.parseHost=function(){return _e(this)};const Ie=e=>({position:"relative",maxWidth:"420px",height:"565px",borderRadius:"base.borderRadius.x6",overflow:"hidden",marginLeft:"base.spacing.x2",marginRight:"base.spacing.x2",marginBottom:"base.spacing.x2",display:e?"block":"none"}),Ce=e=>({display:e?"block":"none"});var ge,we,Ne,Pe;!function(e){e.TRANSAK_WIDGET_OPEN="TRANSAK_WIDGET_OPEN",e.TRANSAK_ORDER_CREATED="TRANSAK_ORDER_CREATED",e.TRANSAK_ORDER_SUCCESSFUL="TRANSAK_ORDER_SUCCESSFUL",e.TRANSAK_ORDER_FAILED="TRANSAK_ORDER_FAILED"}(ge||(ge={})),function(e){e.PROCESSING="PROCESSING",e.COMPLETED="COMPLETED"}(we||(we={})),function(e){e.TRANSAK_WIDGET_INITIALISED="TRANSAK_WIDGET_INITIALISED",e.TRANSAK_WIDGET_OPEN="TRANSAK_WIDGET_OPEN",e.TRANSAK_ORDER_CREATED="TRANSAK_ORDER_CREATED",e.TRANSAK_ORDER_SUCCESSFUL="TRANSAK_ORDER_SUCCESSFUL",e.TRANSAK_ORDER_FAILED="TRANSAK_ORDER_FAILED"}(Ne||(Ne={})),function(e){e.PROCESSING="PROCESSING",e.COMPLETED="COMPLETED"}(Pe||(Pe={}));const be=["global.transak.com","global-stg.transak.com"],De={[Ne.TRANSAK_WIDGET_OPEN]:{screen:"InputScreen",control:"TransakWidgetOpen",controlType:"IframeEvent"},[Ne.TRANSAK_ORDER_CREATED]:{screen:"InputScreen",control:"OrderCreated",controlType:"IframeEvent"},[`${Ne.TRANSAK_ORDER_SUCCESSFUL}${Pe.PROCESSING}`]:{screen:"OrderInProgress",control:"PaymentProcessing",controlType:"IframeEvent"},[`${Ne.TRANSAK_ORDER_SUCCESSFUL}${Pe.COMPLETED}`]:{screen:"Success",control:"PaymentCompleted",controlType:"IframeEvent"},[Ne.TRANSAK_ORDER_FAILED]:{screen:"Failure",control:"PaymentFailed",controlType:"IframeEvent"}},Le=e=>{const{track:t}=o(),{userJourney:a,ref:r,walletAddress:n,isPassportWallet:i,failedToLoadTimeoutInMs:h,onFailedToLoad:c}=e,[u,l]=s.useState(!1),p=h||1e4,f=s.useRef(void 0),d=s.useCallback((e=>{const r=e.event_id,o=[Ne.TRANSAK_ORDER_SUCCESSFUL].includes(r)?`${r}${e.data.status}`:r,s=De?.[o]||{};Object.keys(s).length>=0&&t({...s,userJourney:a,extras:{walletAddress:n,isPassportWallet:i}})}),[]),m=s.useCallback((t=>{switch(t.event_id){case Ne.TRANSAK_WIDGET_INITIALISED:a=t.data,l(!0),clearTimeout(f.current),f.current=void 0,e.onInit?.(a);break;case Ne.TRANSAK_WIDGET_OPEN:e.onOpen?.(t.data);break;case Ne.TRANSAK_ORDER_CREATED:e.onOrderCreated?.(t.data);break;case Ne.TRANSAK_ORDER_SUCCESSFUL:t.data.status===Pe.PROCESSING&&e.onOrderProcessing?.(t.data),t.data.status===Pe.COMPLETED&&e.onOrderCompleted?.(t.data);break;case Ne.TRANSAK_ORDER_FAILED:e.onOrderFailed?.(t.data)}var a}),[]),R=s.useCallback((e=>{const t=Oe(e.origin)?.host?.toLowerCase();e.source===r?.current?.contentWindow&&t&&be.includes(t)&&(d(e.data),m(e.data),console.log("@@@ Transak event",e))}),[r]);return s.useEffect((()=>(window.addEventListener("message",R),()=>{clearTimeout(f.current),window.removeEventListener("message",R)})),[]),{initialised:u,onLoad:()=>{void 0!==c&&(void 0!==f.current||u||(f.current=setTimeout((()=>{u||c()}),p)))}}},xe="transak-iframe",Ue=6e3;function ke({passport:e,showIframe:t,tokenAmount:a,tokenAddress:r}){const{connectLoaderState:n}=s.useContext(i),{checkout:S,provider:O}=n,{eventTargetState:{eventTarget:T}}=s.useContext(h),{t:y}=c(),{viewState:_,viewDispatch:I}=s.useContext(u),[C,g]=s.useState(""),w=s.useRef(),N=!!e&&O?.provider?.isPassport,P=s.useMemo((()=>_.history.length>2&&_.history[_.history.length-2].type===l.TOP_UP_VIEW),[_.history]),{track:b}=o();return s.useEffect((()=>{if(!S||!O)return;let t="";(async()=>{const n={exchangeType:p.ONRAMP,web3Provider:O,tokenAddress:r,tokenAmount:a,passport:e};g(await S.createFiatRampUrl(n)),t=await O.getSigner().getAddress()})();const n=document.getElementById(xe);if(!n)return;window.addEventListener("message",(e=>{if(!n)return;const o=se.parse(e.origin)?.host?.toLowerCase();e.source===n.contentWindow&&o&&be.includes(o)&&((async(e,t)=>{const a={userId:t.toLowerCase(),isPassportWallet:N};switch(e.event_id){case ge.TRANSAK_WIDGET_OPEN:b({userJourney:v.ON_RAMP,screen:"InputScreen",control:"TransakWidgetOpen",controlType:"IframeEvent",extras:{...a}});break;case ge.TRANSAK_ORDER_CREATED:b({userJourney:v.ON_RAMP,screen:"InputScreen",control:"OrderCreated",controlType:"IframeEvent",extras:{...a}});break;case ge.TRANSAK_ORDER_SUCCESSFUL:e.data.status===we.PROCESSING&&b({userJourney:v.ON_RAMP,screen:"OrderInProgress",control:"PaymentProcessing",controlType:"IframeEvent",extras:{...a}}),e.data.status===we.COMPLETED&&b({userJourney:v.ON_RAMP,screen:"Success",control:"PaymentCompleted",controlType:"IframeEvent",extras:{...a}});break;case ge.TRANSAK_ORDER_FAILED:b({userJourney:v.ON_RAMP,screen:"Failure",control:"PaymentFailed",controlType:"IframeEvent",extras:{...a}})}})(e.data,t),(e=>{if(w.current&&clearTimeout(w.current),e.event_id!==ge.TRANSAK_WIDGET_OPEN)return e.event_id===ge.TRANSAK_ORDER_SUCCESSFUL&&e.data.status===we.PROCESSING?(I({payload:{type:A.UPDATE_VIEW,view:{type:D.IN_PROGRESS_LOADING}}}),void(w.current=window.setTimeout((()=>{I({payload:{type:A.UPDATE_VIEW,view:{type:D.IN_PROGRESS}}})}),Ue))):void(e.event_id!==ge.TRANSAK_ORDER_SUCCESSFUL||e.data.status!==we.COMPLETED?e.event_id===ge.TRANSAK_ORDER_FAILED&&I({payload:{type:A.UPDATE_VIEW,view:{type:D.FAIL,data:{amount:a,tokenAddress:r},reason:`Transaction failed: ${e.data.statusReason}`}}}):I({payload:{type:A.UPDATE_VIEW,view:{type:D.SUCCESS,data:{transactionHash:e.data.transactionHash}}}}));I({payload:{type:A.UPDATE_VIEW,view:{type:D.ONRAMP,data:{amount:_.view.data?.amount??a,tokenAddress:_.view.data?.tokenAddress??r}}}})})(e.data))}))}),[S,O,a,r,e]),f(E,{sx:Ce(t),children:f(d,{header:f(m,{showBack:P,title:y("views.ONRAMP.header.title"),onCloseButtonClick:()=>R(T)}),footerBackgroundColor:"base.color.translucent.emphasis.200",children:f(E,{sx:Ie(t),children:f("iframe",{title:"Transak",id:xe,src:C,allow:"camera;microphone;fullscreen;payment",style:{height:"100%",width:"100%",border:"none",position:"absolute"}})})})})}function Ke(){const{eventTargetState:{eventTarget:e}}=s.useContext(h),{t:t}=c();return f(d,{testId:"order-in-progress-view",header:f(m,{transparent:!0,onCloseButtonClick:()=>R(e)}),footer:f(S,{}),heroContent:f(x,{}),floatHeader:!0,children:O(T,{heading:t("views.ONRAMP.IN_PROGRESS.content.heading"),children:[t("views.ONRAMP.IN_PROGRESS.content.body1"),f("br",{}),f("br",{}),t("views.ONRAMP.IN_PROGRESS.content.body2")]})})}function Fe({amount:e,tokenAddress:t,config:a}){const{isOnRampEnabled:r,isSwapEnabled:n,isBridgeEnabled:o}=a,[p,d]=s.useReducer(y,{..._,history:[]}),m=s.useMemo((()=>({viewState:p,viewDispatch:d})),[p,y]),{connectLoaderState:E}=s.useContext(i),{checkout:S,provider:T}=E,[x,U]=s.useState(t),{eventTargetState:{eventTarget:k}}=s.useContext(h),{t:K}=c(),F=s.useMemo((()=>p.view.type===D.ONRAMP),[p.view.type]);return s.useEffect((()=>{S&&T&&(async()=>{if(!(await S.getNetworkInfo({provider:T})).isSupported)return;const e=x?.toLocaleLowerCase()===I?I:t;U(e)})()}),[S,T,d]),O(u.Provider,{value:m,children:[p.view.type===l.LOADING_VIEW&&f(C,{loadingText:K("views.ONRAMP.initialLoadingText")}),p.view.type===D.IN_PROGRESS_LOADING&&f(C,{loadingText:K("views.ONRAMP.IN_PROGRESS_LOADING.loading.text")}),p.view.type===D.IN_PROGRESS&&f(Ke,{}),p.view.type===D.SUCCESS&&f(N,{statusText:K("views.ONRAMP.SUCCESS.text"),actionText:K("views.ONRAMP.SUCCESS.actionText"),onRenderEvent:()=>g(k,p.view.data.transactionHash),onActionClick:()=>R(k),statusType:w.SUCCESS,testId:"success-view"}),p.view.type===D.FAIL&&f(N,{statusText:K("views.ONRAMP.FAIL.text"),actionText:K("views.ONRAMP.FAIL.actionText"),onRenderEvent:()=>P(k,p.view.reason??"Transaction failed"),onActionClick:()=>{d({payload:{type:A.UPDATE_VIEW,view:{type:D.ONRAMP,data:p.view.data}}})},statusType:w.FAILURE,onCloseClick:()=>R(k),testId:"fail-view"}),p.view.type!==D.SUCCESS&&p.view.type!==D.FAIL&&f(ke,{passport:S?.passport,showIframe:F,tokenAmount:e??p.view.data?.amount,tokenAddress:x??p.view.data?.tokenAddress}),p.view.type===l.TOP_UP_VIEW&&f(L,{analytics:{userJourney:v.ON_RAMP},widgetEvent:b.IMTBL_ONRAMP_WIDGET_EVENT,checkout:S,provider:T,showOnrampOption:r,showSwapOption:n,showBridgeOption:o,onCloseButtonClick:()=>R(k)})]})}var je=Object.freeze({__proto__:null,default:Fe});export{Fe as O,je as a,Le as u};
|