@dcl/auth-site 4.11.10-22674067433.commit-ec9ee87 → 4.11.10
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/assets/1949206f0b8ec64d-qrlN31md.svg +9 -0
- package/assets/805322223c96be40-CKnEN-kZ.png +0 -0
- package/assets/{ConstantsUtil-ESae-Z7-.js → ConstantsUtil-p18SxHNb.js} +1 -1
- package/assets/{ContentfulRichText-BtJfWm5x.js → ContentfulRichText-CuUzDhK8.js} +1 -1
- package/assets/{ExchangeController-IT3Dhd87.js → ExchangeController-DzfUZs5x.js} +1 -1
- package/assets/{HelpersUtil-DSNS5n-9.js → HelpersUtil-XKCaotuk.js} +1 -1
- package/assets/NetworkUtil-sGYAtXqw.js +7 -0
- package/assets/{SwapController-yDy01m5V.js → SwapController-4W4ijrvf.js} +1 -1
- package/assets/{biconomy-B599Ur_0.js → biconomy-Dly9w0vY.js} +1 -1
- package/assets/brand-icons-Cu_C0hZ4.svg +1008 -0
- package/assets/brand-icons-F3SPCeH1.woff +0 -0
- package/assets/brand-icons-XL9sxUpA.woff2 +0 -0
- package/assets/brand-icons-sqJ2Pg7a.eot +0 -0
- package/assets/brand-icons-ubhWoxly.ttf +0 -0
- package/assets/ccip-B9aFL1MQ.js +1 -0
- package/assets/da0e2040ea4c51ef-rAUxngFb.svg +1 -0
- package/assets/{data-capture-CzsW3pB7.js → data-capture-tGGi1Ydy.js} +3 -3
- package/assets/{email-DWs9f9tH.js → email-hTjSyTyX.js} +6 -6
- package/assets/{embedded-wallet-P7U24FrG.js → embedded-wallet-BrB_4WzR.js} +6 -6
- package/assets/{engine-DAuziGro.js → engine-z9o8NNFN.js} +1 -1
- package/assets/extractIPFS-Dm5hYCcH.js +1 -0
- package/assets/{features--CaJUF7o.js → features-D-HmXfRu.js} +2 -2
- package/assets/flags-DOLqOU7Y.png +0 -0
- package/assets/fortmatic-DpLsx1s2.js +13 -0
- package/assets/{getInstalledModules-Bdsr8t_C.js → getInstalledModules-BxNMMrxI.js} +1 -1
- package/assets/icons-BOCtAERH.woff +0 -0
- package/assets/icons-CHzK1VD9.eot +0 -0
- package/assets/icons-D29ZQHHw.ttf +0 -0
- package/assets/icons-Du6TOHnR.woff2 +0 -0
- package/assets/icons-RwhydX30.svg +1518 -0
- package/assets/{if-defined-2xQLKahR.js → if-defined-BoFFMPLs.js} +1 -1
- package/assets/image1-_0ffTiKd.webp +0 -0
- package/assets/image10-I4vX--po.webp +0 -0
- package/assets/image2-sHeDDy_F.webp +0 -0
- package/assets/image3-B79JnaG7.webp +0 -0
- package/assets/image4-Cy2Bg8G8.webp +0 -0
- package/assets/image5-BwZ-6sYY.webp +0 -0
- package/assets/image6-DFi5BRnf.webp +0 -0
- package/assets/image7-CyRqcJTw.webp +0 -0
- package/assets/image8-DohHwcO9.webp +0 -0
- package/assets/image9-caIPOcpa.webp +0 -0
- package/assets/in-app-wallet-calls-C3aPhXtO.js +1 -0
- package/assets/{index-Dl7iro_s.js → index--wKrGngN.js} +1 -1
- package/assets/{index-DUoxxqna.js → index-8TMITg1r.js} +1 -1
- package/assets/index-B0fQnkQ5.js +248 -0
- package/assets/{index-MubCrWiB.js → index-B1qCZLvQ.js} +1 -1
- package/assets/index-B2UXqNqr.js +14 -0
- package/assets/{index-CzHm4Ry3.js → index-B3fadyTT.js} +3 -3
- package/assets/index-B5aC8E1X.css +1 -0
- package/assets/{index-EfYw_r-L.js → index-B729d3FM.js} +4 -4
- package/assets/index-BJ1WxAUM.js +7 -0
- package/assets/{index-vWAYjUUv.js → index-BSFhSoM_.js} +1 -1
- package/assets/{index-DJO0bodJ.js → index-BhaWASJT.js} +1 -1
- package/assets/{index-CUEaPFt-.js → index-BrOi7a3U.js} +3 -3
- package/assets/{index-DIWcFA1F.js → index-BsdLV5kJ.js} +1 -1
- package/assets/{index-ppPPH70g.js → index-BtZhKCqj.js} +4 -4
- package/assets/{index-CziCm94K.js → index-Bvny0Xgz.js} +1 -1
- package/assets/{index-D0cHggih.js → index-CCd5oS0s.js} +3 -3
- package/assets/index-COanpESA.js +425 -0
- package/assets/{index-BQsAkTBu.js → index-CVsaRRKm.js} +3 -3
- package/assets/index-C_pCrG4N.js +2 -0
- package/assets/{index-xFdcXlRb.js → index-Ccixd5c3.js} +1 -1
- package/assets/{index-Bv3VmA8e.js → index-D76LDvqK.js} +1 -1
- package/assets/{index-B9z9f635.js → index-DE30NxYx.js} +2 -2
- package/assets/{index-jq6mMx3J.js → index-DF-ZAXHc.js} +1 -1
- package/assets/{index-HAgxNzWE.js → index-DKWu_DOR.js} +1 -1
- package/assets/{index-VsMuUpAO.js → index-DWQfcLNQ.js} +1 -1
- package/assets/index-DdNA7FEA.js +20858 -0
- package/assets/index-Dh5xsOC8.js +13 -0
- package/assets/{index-CPXKpbtw.js → index-DhR4CWqo.js} +3 -3
- package/assets/{index-DdCktyEF.js → index-Dv6NX9VQ.js} +1 -1
- package/assets/{index-CRvDhax9.js → index-DvjRQRaG.js} +1 -1
- package/assets/{index-UvGAZXmw.js → index-DxXFLIUG.js} +4 -4
- package/assets/index-FZCkPsng.js +3 -0
- package/assets/index-T3ZzCX6S.js +4 -0
- package/assets/{index-CRA7VI9s.js → index-T74egyiU.js} +1 -1
- package/assets/{index-BsWozatx.js → index-U5jfZk1i.js} +1 -1
- package/assets/{index-BIUEtDdG.js → index-YOecdb0o.js} +1 -1
- package/assets/index-ZctKyjjk.js +1 -0
- package/assets/{index-CO5QKdxX.js → index-bKhmSsUt.js} +1 -1
- package/assets/{index-gcHRu1bF.js → index-ksqvpIH6.js} +1 -1
- package/assets/{index-L_5Cs_kx.js → index-l8aM--_F.js} +4 -4
- package/assets/{index-DAoSp5q5.js → index-zk2q_Q_G.js} +1 -1
- package/assets/networks-Clam15G5.js +4 -0
- package/assets/{onramp-WAW9ejhZ.js → onramp-9pmSlBnz.js} +1 -1
- package/assets/{openzeppelin-DV82z7lJ.js → openzeppelin-CCD6rP-X.js} +1 -1
- package/assets/outline-icons-BfdLr8tr.svg +366 -0
- package/assets/outline-icons-DD8jm0uy.ttf +0 -0
- package/assets/outline-icons-DInHoiqI.woff2 +0 -0
- package/assets/outline-icons-LX8adJ4n.eot +0 -0
- package/assets/outline-icons-aQ88nltS.woff +0 -0
- package/assets/{parse-typed-data-8DIRR0Kb.js → parse-typed-data-CQ7fMUke.js} +1 -1
- package/assets/passkeys-ClPCDmsq.js +1 -0
- package/assets/{pay-with-exchange-CNJhpLnE.js → pay-with-exchange-29qX9lth.js} +3 -3
- package/assets/{receive-ss1HRI3I.js → receive-BNr9rr8r.js} +3 -3
- package/assets/{ref-CoyvS0l-.js → ref-CfiuWBst.js} +1 -1
- package/assets/{resolveImplementation-C5lycJfC.js → resolveImplementation-DWNdXsgn.js} +1 -1
- package/assets/secp256k1-Cbm_E6WS.js +1 -0
- package/assets/{send-C4Og1BUJ.js → send-Db7vaGI-.js} +4 -4
- package/assets/send-eip712-transaction-rpuezGb0.js +1 -0
- package/assets/{send-gasless-transaction-DIQuGEL1.js → send-gasless-transaction-BMSa2txn.js} +2 -2
- package/assets/{socials-C7aTr6Px.js → socials-BHUNG0K3.js} +8 -8
- package/assets/{swaps-BDatuUE1.js → swaps-C9Q6lE1v.js} +1 -1
- package/assets/thirdweb-JZyWELEG.js +20 -0
- package/assets/{transactions-Do481Xcb.js → transactions-6g75FPKk.js} +2 -2
- package/assets/ui-DEQUo7uD.js +745 -0
- package/assets/ui-DzH-5xCG.css +346 -0
- package/assets/vendor-BhVAW1d5.js +59 -0
- package/assets/verifyHash-RVn4FTNf.js +35 -0
- package/assets/{w3m-modal-Cj2A1qC_.js → w3m-modal-CTfiBorR.js} +1 -1
- package/assets/web-connector-B09S69hZ.js +9 -0
- package/index.html +6 -5
- package/package.json +7 -7
- package/assets/NetworkUtil-BCvAceLL.js +0 -1
- package/assets/ccip-_ZVU0YUG.js +0 -1
- package/assets/extractIPFS-DgGO_4eF.js +0 -1
- package/assets/fortmatic-BouPZqQI.js +0 -13
- package/assets/in-app-wallet-calls-D8l_xpYN.js +0 -1
- package/assets/index-C0hHgKRI.js +0 -425
- package/assets/index-CA6Zy4Du.js +0 -7
- package/assets/index-CQzRvO-C.js +0 -1
- package/assets/index-D8AVDivV.js +0 -2
- package/assets/index-D9rT-G2z.js +0 -1
- package/assets/index-DPpJj3DF.js +0 -13
- package/assets/index-DRQzckTJ.js +0 -1
- package/assets/index-DvSlA4j0.js +0 -5
- package/assets/index-DvuTX_1c.css +0 -1
- package/assets/index-JH3zlM2a.js +0 -4
- package/assets/index-JRJx2NpU.js +0 -14
- package/assets/index-MkZbQyDw.js +0 -248
- package/assets/index-fG1WBhYz.js +0 -20895
- package/assets/networks-ZUADr5kB.js +0 -3
- package/assets/passkeys-BOJeUfAK.js +0 -1
- package/assets/secp256k1-DW9CEMKa.js +0 -1
- package/assets/send-eip712-transaction-C2PvhNcm.js +0 -1
- package/assets/successAnimation_Lottie-BpyTLLuX.js +0 -1
- package/assets/thirdweb-juEAwwxR.js +0 -20
- package/assets/ui-BsoeejM4.js +0 -762
- package/assets/vendor-C-guZ9WP.js +0 -59
- package/assets/web-connector-DIFP2_dO.js +0 -9
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
<svg width="187" height="60" viewBox="0 0 187 60" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
2
|
+
<rect width="187" height="60" fill="url(#pattern0)"/>
|
|
3
|
+
<defs>
|
|
4
|
+
<pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1">
|
|
5
|
+
<use xlink:href="#image0_2730_19985" transform="translate(0 0.217448) scale(0.000520833 0.00161458)"/>
|
|
6
|
+
</pattern>
|
|
7
|
+
<image id="image0_2730_19985" width="1920" height="350" xlink:href="data:image/png;base64,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gAACCCCAAAIIIIAAAggggAACCCCAAAKDCHj17zWKFQfZONFt3qa8fpRoblmmxQRwkGHVquHlNRu7jCZml9EE7TK61u4yWo3rF/3ymrhdxqHB7N0+oN/v0u93abt5t/r5Dm17t1Ye36WZ5Lt0UeK79PudmuS9NwgBaSKAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACXRP4qDr85cCd9urf5yo0dUVBAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEuiugdYHzrv3rydOosVl3h4+eI4AAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAv8W2EE/Rp34dd5XKDgb8b/Hk58QQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQKCjAjms/n1HR8eObiOAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAILCGyn36Kv/l1sgR7xCwIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIINBBgSXU56sVkSeA39XBcaPLCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAwCIC2+ieyJO/nrxm9e8iw8odCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCDQNQFPnEZf/bt11waN/iKAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAL9BHzq5Oirf30KawoCCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCDQaQGv/r1CEXkCeNtOjyCdRwABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBOYLbKHbyJO/1yt/Vv/ydEYAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAgc4LjEngYkXkCeDtOz+KACCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIS2EQRefLXq3+XZCQRQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBOKv/v0wg4gAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAgggUBQbCyHy6t+blD+rf3kmI4AAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAhI4TxF5AvjjjCICCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAQFFsJITIk79e/bs0A4kAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAgggEH/176cZRAQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQACBothACJFX/96m/Fn9yzMZAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQkMAsReQJ4M8xiggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACRfEqIUSe/PXq32UZSAQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQACBojhFCJEngHdjEBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEiuLlQog8+XuH8mf1L89kBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAQAI/V0SeAN6DUUQAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQKIoXCiHy5K9X/67AQCKAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIFMWJQog8ATyDQUQAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQiL/6924NIqt/eSYjgAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACEjhBEXn1776MIgIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIBAUTxbCA8pok4Ae/XvigwkAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggEBRfF8IUSd/nff+DCICCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAQFE8XQiRV//ep/xZ/cszGQEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEJDAMYrIq38PYhQRQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBB5e/TtHEFEngL36dyUGEgEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEECgKI4QQtTJX+f9NQYRAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQKAoVhHCA4qoE8DOndW/PJMRQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABCXxTEXXy13kfyigigAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCDy8cjb66l+vYKYggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACnRfwtXMjr/49rPMjCAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCAgAV839z5F1AngOcqd1b9CiFr+H/154S/LOev4AAAAAElFTkSuQmCC"/>
|
|
8
|
+
</defs>
|
|
9
|
+
</svg>
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as t}from"./thirdweb-
|
|
1
|
+
import{p as t}from"./thirdweb-JZyWELEG.js";var e={};const o={ACCOUNT_TABS:[{label:"Tokens"},{label:"Activity"}],SECURE_SITE_ORIGIN:(typeof t<"u"&&typeof e<"u"?e.NEXT_PUBLIC_SECURE_SITE_ORIGIN:void 0)||"https://secure.walletconnect.org",VIEW_DIRECTION:{Next:"next",Prev:"prev"},ANIMATION_DURATIONS:{HeaderText:120},VIEWS_WITH_LEGAL_FOOTER:["Connect","ConnectWallets","OnRampTokenSelect","OnRampFiatSelect","OnRampProviders"],VIEWS_WITH_DEFAULT_FOOTER:["Networks"]};export{o as C};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as m}from"./thirdweb-
|
|
1
|
+
import{_ as m}from"./thirdweb-JZyWELEG.js";import{j as e}from"./ui-DEQUo7uD.js";import{a as o}from"./vendor-BhVAW1d5.js";const p=({document:t})=>{const[r,n]=o.useState(null);return o.useEffect(()=>{m(()=>import("./rich-text-react-renderer_decentraland-ui2-BIHI7g3E.js"),[]).then(s=>{n(s.documentToReactComponents(t))})},[t]),e.jsx(e.Fragment,{children:r})};export{p as ContentfulRichText};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as k,g as U,C as l,E as w,a as E,S as A,b as x,
|
|
1
|
+
import{p as k,g as U,C as l,E as w,a as E,S as A,b as x,f as P,c as N,d as I,O as L,N as f,e as C,B as T,h as W,s as _,i as v}from"./index-B0fQnkQ5.js";const D=0,b={paymentAsset:null,amount:null,tokenAmount:0,priceLoading:!1,error:null,exchanges:[],isLoading:!1,currentPayment:void 0,isPaymentInProgress:!1,paymentId:"",assets:[]},e=k(b),m={state:e,subscribe(t){return v(e,()=>t(e))},subscribeKey(t,n){return _(e,t,n)},resetState(){Object.assign(e,{...b})},async getAssetsForNetwork(t){const n=W(t),s=await m.getAssetsImageAndPrice(n),r=n.map(a=>{var c,o,p,y;const u=a.asset==="native"?C():`${a.network}:${a.asset}`,i=s.find(S=>{var g,d,h;return((h=(d=(g=S.fungibles)==null?void 0:g[0])==null?void 0:d.address)==null?void 0:h.toLowerCase())===u.toLowerCase()});return{...a,price:((o=(c=i==null?void 0:i.fungibles)==null?void 0:c[0])==null?void 0:o.price)||1,metadata:{...a.metadata,iconUrl:(y=(p=i==null?void 0:i.fungibles)==null?void 0:p[0])==null?void 0:y.iconUrl}}});return e.assets=r,r},async getAssetsImageAndPrice(t){const n=t.map(r=>r.asset==="native"?C():`${r.network}:${r.asset}`);return await Promise.all(n.map(r=>T.fetchTokenPrice({addresses:[r]})))},getTokenAmount(){var s;if(!((s=e==null?void 0:e.paymentAsset)!=null&&s.price))throw new Error("Cannot get token price");const t=f.bigNumber(e.amount??0).round(8),n=f.bigNumber(e.paymentAsset.price).round(8);return t.div(n).round(8).toNumber()},setAmount(t){var n;e.amount=t,(n=e.paymentAsset)!=null&&n.price&&(e.tokenAmount=m.getTokenAmount())},setPaymentAsset(t){e.paymentAsset=t},isPayWithExchangeEnabled(){var t;return(t=L.state.remoteFeatures)==null?void 0:t.payWithExchange},isPayWithExchangeSupported(){return m.isPayWithExchangeEnabled()&&l.state.activeCaipNetwork&&I.PAY_WITH_EXCHANGE_SUPPORTED_CHAIN_NAMESPACES.includes(l.state.activeCaipNetwork.chainNamespace)},async fetchExchanges(){var t;try{const n=m.isPayWithExchangeSupported();if(!e.paymentAsset||!n){e.exchanges=[],e.isLoading=!1;return}e.isLoading=!0;const s=await N({page:D,asset:P(e.paymentAsset.network,e.paymentAsset.asset),amount:((t=e.amount)==null?void 0:t.toString())??"0"});e.exchanges=s.exchanges.slice(0,2)}catch{throw A.showError("Unable to get exchanges"),new Error("Unable to get exchanges")}finally{e.isLoading=!1}},async getPayUrl(t,n){try{const s=Number(n.amount),r=await x({exchangeId:t,asset:P(n.network,n.asset),amount:s.toString(),recipient:`${n.network}:${n.recipient}`});return w.sendEvent({type:"track",event:"PAY_EXCHANGE_SELECTED",properties:{exchange:{id:t},configuration:{network:n.network,asset:n.asset,recipient:n.recipient,amount:s},currentPayment:{type:"exchange",exchangeId:t},source:"fund-from-exchange",headless:!1}}),r}catch(s){throw s instanceof Error&&s.message.includes("is not supported")?new Error("Asset not supported"):new Error(s.message)}},async handlePayWithExchange(t){var n;try{const s=(n=l.getAccountData())==null?void 0:n.address;if(!s)throw new Error("No account connected");if(!e.paymentAsset)throw new Error("No payment asset selected");const r=E.returnOpenHref("","popupWindow","scrollbar=yes,width=480,height=720");if(!r)throw new Error("Could not create popup window");e.isPaymentInProgress=!0,e.paymentId=crypto.randomUUID(),e.currentPayment={type:"exchange",exchangeId:t};const{network:a,asset:u}=e.paymentAsset,i={network:a,asset:u,amount:e.tokenAmount,recipient:s},c=await m.getPayUrl(t,i);if(!c){try{r.close()}catch(o){console.error("Unable to close popup window",o)}throw new Error("Unable to initiate payment")}e.currentPayment.sessionId=c.sessionId,e.currentPayment.status="IN_PROGRESS",e.currentPayment.exchangeId=t,r.location.href=c.url}catch{e.error="Unable to initiate payment",A.showError(e.error)}},async waitUntilComplete({exchangeId:t,sessionId:n,paymentId:s,retries:r=20}){const a=await m.getBuyStatus(t,n,s);if(a.status==="SUCCESS"||a.status==="FAILED")return a;if(r===0)throw new Error("Unable to get deposit status");return await new Promise(u=>{setTimeout(u,5e3)}),m.waitUntilComplete({exchangeId:t,sessionId:n,paymentId:s,retries:r-1})},async getBuyStatus(t,n,s){var r,a,u,i,c;try{if(!e.currentPayment)throw new Error("No current payment");const o=await U({sessionId:n,exchangeId:t});if(e.currentPayment.status=o.status,o.status==="SUCCESS"||o.status==="FAILED"){const p=(r=l.getAccountData())==null?void 0:r.address;e.currentPayment.result=o.txHash,e.isPaymentInProgress=!1,w.sendEvent({type:"track",event:o.status==="SUCCESS"?"PAY_SUCCESS":"PAY_ERROR",properties:{message:o.status==="FAILED"?E.parseError(e.error):void 0,source:"fund-from-exchange",paymentId:s,configuration:{network:((a=e.paymentAsset)==null?void 0:a.network)||"",asset:((u=e.paymentAsset)==null?void 0:u.asset)||"",recipient:p||"",amount:e.amount??0},currentPayment:{type:"exchange",exchangeId:(i=e.currentPayment)==null?void 0:i.exchangeId,sessionId:(c=e.currentPayment)==null?void 0:c.sessionId,result:o.txHash}}})}return o}catch{return{status:"UNKNOWN",txHash:""}}},reset(){e.currentPayment=void 0,e.isPaymentInProgress=!1,e.paymentId="",e.paymentAsset=null,e.amount=0,e.tokenAmount=0,e.priceLoading=!1,e.error=null,e.exchanges=[],e.isLoading=!1}};export{m as E};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{j as f,r as g,l as p,m as h,R as v,O as u}from"./index-B0fQnkQ5.js";import{n as m,c as $}from"./index-DE30NxYx.js";import{C as c}from"./ConstantsUtil-p18SxHNb.js";import{C as y}from"./NetworkUtil-sGYAtXqw.js";const b=f`
|
|
2
2
|
:host {
|
|
3
3
|
display: flex;
|
|
4
4
|
justify-content: center;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import{p as Be}from"./thirdweb-JZyWELEG.js";const Ve="2.43.4";let j={getDocsUrl:({docsBaseUrl:s,docsPath:e="",docsSlug:t})=>e?`${s??"https://viem.sh"}${e}${t?`#${t}`:""}`:void 0,version:`viem@${Ve}`};class p extends Error{constructor(e,t={}){var i;const r=(()=>{var u;return t.cause instanceof p?t.cause.details:(u=t.cause)!=null&&u.message?t.cause.message:t.details})(),n=t.cause instanceof p&&t.cause.docsPath||t.docsPath,a=(i=j.getDocsUrl)==null?void 0:i.call(j,{...t,docsPath:n}),o=[e||"An error occurred.","",...t.metaMessages?[...t.metaMessages,""]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...j.version?[`Version: ${j.version}`]:[]].join(`
|
|
2
|
+
`);super(o,t.cause?{cause:t.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.details=r,this.docsPath=n,this.metaMessages=t.metaMessages,this.name=t.name??this.name,this.shortMessage=e,this.version=Ve}walk(e){return qe(this,e)}}function qe(s,e){return e!=null&&e(s)?s:s&&typeof s=="object"&&"cause"in s&&s.cause!==void 0?qe(s.cause,e):e?null:s}class ut extends p{constructor({max:e,min:t,signed:r,size:n,value:a}){super(`Number "${a}" is not in safe ${n?`${n*8}-bit ${r?"signed":"unsigned"} `:""}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:"IntegerOutOfRangeError"})}}class Es extends p{constructor(e){super(`Bytes value "${e}" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:"InvalidBytesBooleanError"})}}class lt extends p{constructor(e){super(`Hex value "${e}" is not a valid boolean. The hex value must be "0x0" (false) or "0x1" (true).`,{name:"InvalidHexBooleanError"})}}class dt extends p{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:"SizeOverflowError"})}}function ht(s,{strict:e=!0}={}){return!s||typeof s!="string"?!1:e?/^0x[0-9a-fA-F]*$/.test(s):s.startsWith("0x")}function $e(s){return ht(s,{strict:!1})?Math.ceil((s.length-2)/2):s.length}function re(s,{dir:e="left"}={}){let t=typeof s=="string"?s.replace("0x",""):s,r=0;for(let n=0;n<t.length-1&&t[e==="left"?n:t.length-n-1].toString()==="0";n++)r++;return t=e==="left"?t.slice(r):t.slice(0,t.length-r),typeof s=="string"?(t.length===1&&e==="right"&&(t=`${t}0`),`0x${t.length%2===1?`0${t}`:t}`):t}class ws extends p{constructor({offset:e,position:t,size:r}){super(`Slice ${t==="start"?"starting":"ending"} at offset "${e}" is out-of-bounds (size: ${r}).`,{name:"SliceOffsetOutOfBoundsError"})}}class Ke extends p{constructor({size:e,targetSize:t,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:"SizeExceedsPaddingSizeError"})}}class As extends p{constructor({size:e,targetSize:t,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} is expected to be ${t} ${r} long, but is ${e} ${r} long.`,{name:"InvalidBytesLengthError"})}}function oe(s,{dir:e,size:t=32}={}){return typeof s=="string"?ft(s,{dir:e,size:t}):pt(s,{dir:e,size:t})}function ft(s,{dir:e,size:t=32}={}){if(t===null)return s;const r=s.replace("0x","");if(r.length>t*2)throw new Ke({size:Math.ceil(r.length/2),targetSize:t,type:"hex"});return`0x${r[e==="right"?"padEnd":"padStart"](t*2,"0")}`}function pt(s,{dir:e,size:t=32}={}){if(t===null)return s;if(s.length>t)throw new Ke({size:s.length,targetSize:t,type:"bytes"});const r=new Uint8Array(t);for(let n=0;n<t;n++){const a=e==="right";r[a?n:t-n-1]=s[a?n:s.length-n-1]}return r}const bt=Array.from({length:256},(s,e)=>e.toString(16).padStart(2,"0"));function Ns(s,e={}){return typeof s=="number"||typeof s=="bigint"?gt(s,e):typeof s=="string"?xt(s,e):typeof s=="boolean"?mt(s,e):Xe(s,e)}function mt(s,e={}){const t=`0x${Number(s)}`;return typeof e.size=="number"?(J(t,{size:e.size}),oe(t,{size:e.size})):t}function Xe(s,e={}){let t="";for(let n=0;n<s.length;n++)t+=bt[s[n]];const r=`0x${t}`;return typeof e.size=="number"?(J(r,{size:e.size}),oe(r,{dir:"right",size:e.size})):r}function gt(s,e={}){const{signed:t,size:r}=e,n=BigInt(s);let a;r?t?a=(1n<<BigInt(r)*8n-1n)-1n:a=2n**(BigInt(r)*8n)-1n:typeof s=="number"&&(a=BigInt(Number.MAX_SAFE_INTEGER));const o=typeof a=="bigint"&&t?-a-1n:0;if(a&&n>a||n<o){const u=typeof s=="bigint"?"n":"";throw new ut({max:a?`${a}${u}`:void 0,min:`${o}${u}`,signed:t,size:r,value:`${s}${u}`})}const i=`0x${(t&&n<0?(1n<<BigInt(r*8))+BigInt(n):n).toString(16)}`;return r?oe(i,{size:r}):i}const yt=new TextEncoder;function xt(s,e={}){const t=yt.encode(s);return Xe(t,e)}function J(s,{size:e}){if($e(s)>e)throw new dt({givenSize:$e(s),maxSize:e})}function Et(s,e={}){const{signed:t}=e;e.size&&J(s,{size:e.size});const r=BigInt(s);if(!t)return r;const n=(s.length-2)/2,a=(1n<<BigInt(n)*8n-1n)-1n;return r<=a?r:r-BigInt(`0x${"f".padStart(n*2,"f")}`)-1n}function Ts(s,e={}){let t=s;if(e.size&&(J(t,{size:e.size}),t=re(t)),re(t)==="0x00")return!1;if(re(t)==="0x01")return!0;throw new lt(t)}function Os(s,e={}){return Number(Et(s,e))}const vs={gwei:9,wei:18},wt={ether:-9,wei:9};function At(s,e){let t=s.toString();const r=t.startsWith("-");r&&(t=t.slice(1)),t=t.padStart(e,"0");let[n,a]=[t.slice(0,t.length-e),t.slice(t.length-e)];return a=a.replace(/(0+)$/,""),`${r?"-":""}${n||"0"}${a?`.${a}`:""}`}function K(s,e="wei"){return At(s,wt[e])}const L=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Nt(s){return s instanceof Uint8Array||ArrayBuffer.isView(s)&&s.constructor.name==="Uint8Array"}function X(s){if(!Number.isSafeInteger(s)||s<0)throw new Error("positive integer expected, got "+s)}function P(s,...e){if(!Nt(s))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(s.length))throw new Error("Uint8Array expected of length "+e+", got length="+s.length)}function Tt(s){if(typeof s!="function"||typeof s.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");X(s.outputLen),X(s.blockLen)}function $(s,e=!0){if(s.destroyed)throw new Error("Hash instance has been destroyed");if(e&&s.finished)throw new Error("Hash#digest() has already been called")}function Je(s,e){P(s);const t=e.outputLen;if(s.length<t)throw new Error("digestInto() expects output buffer of length at least "+t)}function Ot(s){return new Uint32Array(s.buffer,s.byteOffset,Math.floor(s.byteLength/4))}function H(...s){for(let e=0;e<s.length;e++)s[e].fill(0)}function ne(s){return new DataView(s.buffer,s.byteOffset,s.byteLength)}function N(s,e){return s<<32-e|s>>>e}const vt=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function Ct(s){return s<<24&4278190080|s<<8&16711680|s>>>8&65280|s>>>24&255}function Mt(s){for(let e=0;e<s.length;e++)s[e]=Ct(s[e]);return s}const De=vt?s=>s:Mt;function St(s){if(typeof s!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(s))}function Y(s){return typeof s=="string"&&(s=St(s)),P(s),s}function Cs(...s){let e=0;for(let r=0;r<s.length;r++){const n=s[r];P(n),e+=n.length}const t=new Uint8Array(e);for(let r=0,n=0;r<s.length;r++){const a=s[r];t.set(a,n),n+=a.length}return t}class ie{}function Q(s){const e=r=>s().update(Y(r)).digest(),t=s();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>s(),e}function Ms(s=32){if(L&&typeof L.getRandomValues=="function")return L.getRandomValues(new Uint8Array(s));if(L&&typeof L.randomBytes=="function")return Uint8Array.from(L.randomBytes(s));throw new Error("crypto.getRandomValues must be defined")}function It(s,e,t,r){if(typeof s.setBigUint64=="function")return s.setBigUint64(e,t,r);const n=BigInt(32),a=BigInt(4294967295),o=Number(t>>n&a),i=Number(t&a),u=r?4:0,f=r?0:4;s.setUint32(e+u,o,r),s.setUint32(e+f,i,r)}function Rt(s,e,t){return s&e^~s&t}function _t(s,e,t){return s&e^s&t^e&t}class Ye extends ie{constructor(e,t,r,n){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=r,this.isLE=n,this.buffer=new Uint8Array(e),this.view=ne(this.buffer)}update(e){$(this),e=Y(e),P(e);const{view:t,buffer:r,blockLen:n}=this,a=e.length;for(let o=0;o<a;){const i=Math.min(n-this.pos,a-o);if(i===n){const u=ne(e);for(;n<=a-o;o+=n)this.process(u,o);continue}r.set(e.subarray(o,o+i),this.pos),this.pos+=i,o+=i,this.pos===n&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){$(this),Je(e,this),this.finished=!0;const{buffer:t,view:r,blockLen:n,isLE:a}=this;let{pos:o}=this;t[o++]=128,H(this.buffer.subarray(o)),this.padOffset>n-o&&(this.process(r,0),o=0);for(let c=o;c<n;c++)t[c]=0;It(r,n-8,BigInt(this.length*8),a),this.process(r,0);const i=ne(e),u=this.outputLen;if(u%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const f=u/4,l=this.get();if(f>l.length)throw new Error("_sha2: outputLen bigger than state");for(let c=0;c<f;c++)i.setUint32(4*c,l[c],a)}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const r=e.slice(0,t);return this.destroy(),r}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:t,buffer:r,length:n,finished:a,destroyed:o,pos:i}=this;return e.destroyed=o,e.finished=a,e.length=n,e.pos=i,n%t&&e.buffer.set(r),e}clone(){return this._cloneInto()}}const S=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),g=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),y=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]),z=BigInt(2**32-1),ke=BigInt(32);function Ht(s,e=!1){return e?{h:Number(s&z),l:Number(s>>ke&z)}:{h:Number(s>>ke&z)|0,l:Number(s&z)|0}}function Qe(s,e=!1){const t=s.length;let r=new Uint32Array(t),n=new Uint32Array(t);for(let a=0;a<t;a++){const{h:o,l:i}=Ht(s[a],e);[r[a],n[a]]=[o,i]}return[r,n]}const je=(s,e,t)=>s>>>t,Fe=(s,e,t)=>s<<32-t|e>>>t,U=(s,e,t)=>s>>>t|e<<32-t,B=(s,e,t)=>s<<32-t|e>>>t,V=(s,e,t)=>s<<64-t|e>>>t-32,q=(s,e,t)=>s>>>t-32|e<<64-t,Pt=(s,e,t)=>s<<t|e>>>32-t,Lt=(s,e,t)=>e<<t|s>>>32-t,Ut=(s,e,t)=>e<<t-32|s>>>64-t,Bt=(s,e,t)=>s<<t-32|e>>>64-t;function v(s,e,t,r){const n=(e>>>0)+(r>>>0);return{h:s+t+(n/2**32|0)|0,l:n|0}}const $t=(s,e,t)=>(s>>>0)+(e>>>0)+(t>>>0),Dt=(s,e,t,r)=>e+t+r+(s/2**32|0)|0,kt=(s,e,t,r)=>(s>>>0)+(e>>>0)+(t>>>0)+(r>>>0),jt=(s,e,t,r,n)=>e+t+r+n+(s/2**32|0)|0,Ft=(s,e,t,r,n)=>(s>>>0)+(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),Wt=(s,e,t,r,n,a)=>e+t+r+n+a+(s/2**32|0)|0,Gt=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),I=new Uint32Array(64);class zt extends Ye{constructor(e=32){super(64,e,8,!1),this.A=S[0]|0,this.B=S[1]|0,this.C=S[2]|0,this.D=S[3]|0,this.E=S[4]|0,this.F=S[5]|0,this.G=S[6]|0,this.H=S[7]|0}get(){const{A:e,B:t,C:r,D:n,E:a,F:o,G:i,H:u}=this;return[e,t,r,n,a,o,i,u]}set(e,t,r,n,a,o,i,u){this.A=e|0,this.B=t|0,this.C=r|0,this.D=n|0,this.E=a|0,this.F=o|0,this.G=i|0,this.H=u|0}process(e,t){for(let c=0;c<16;c++,t+=4)I[c]=e.getUint32(t,!1);for(let c=16;c<64;c++){const d=I[c-15],h=I[c-2],m=N(d,7)^N(d,18)^d>>>3,x=N(h,17)^N(h,19)^h>>>10;I[c]=x+I[c-7]+m+I[c-16]|0}let{A:r,B:n,C:a,D:o,E:i,F:u,G:f,H:l}=this;for(let c=0;c<64;c++){const d=N(i,6)^N(i,11)^N(i,25),h=l+d+Rt(i,u,f)+Gt[c]+I[c]|0,x=(N(r,2)^N(r,13)^N(r,22))+_t(r,n,a)|0;l=f,f=u,u=i,i=o+h|0,o=a,a=n,n=r,r=h+x|0}r=r+this.A|0,n=n+this.B|0,a=a+this.C|0,o=o+this.D|0,i=i+this.E|0,u=u+this.F|0,f=f+this.G|0,l=l+this.H|0,this.set(r,n,a,o,i,u,f,l)}roundClean(){H(I)}destroy(){this.set(0,0,0,0,0,0,0,0),H(this.buffer)}}const Ze=Qe(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(s=>BigInt(s))),Vt=Ze[0],qt=Ze[1],R=new Uint32Array(80),_=new Uint32Array(80);class et extends Ye{constructor(e=64){super(128,e,16,!1),this.Ah=y[0]|0,this.Al=y[1]|0,this.Bh=y[2]|0,this.Bl=y[3]|0,this.Ch=y[4]|0,this.Cl=y[5]|0,this.Dh=y[6]|0,this.Dl=y[7]|0,this.Eh=y[8]|0,this.El=y[9]|0,this.Fh=y[10]|0,this.Fl=y[11]|0,this.Gh=y[12]|0,this.Gl=y[13]|0,this.Hh=y[14]|0,this.Hl=y[15]|0}get(){const{Ah:e,Al:t,Bh:r,Bl:n,Ch:a,Cl:o,Dh:i,Dl:u,Eh:f,El:l,Fh:c,Fl:d,Gh:h,Gl:m,Hh:x,Hl:A}=this;return[e,t,r,n,a,o,i,u,f,l,c,d,h,m,x,A]}set(e,t,r,n,a,o,i,u,f,l,c,d,h,m,x,A){this.Ah=e|0,this.Al=t|0,this.Bh=r|0,this.Bl=n|0,this.Ch=a|0,this.Cl=o|0,this.Dh=i|0,this.Dl=u|0,this.Eh=f|0,this.El=l|0,this.Fh=c|0,this.Fl=d|0,this.Gh=h|0,this.Gl=m|0,this.Hh=x|0,this.Hl=A|0}process(e,t){for(let b=0;b<16;b++,t+=4)R[b]=e.getUint32(t),_[b]=e.getUint32(t+=4);for(let b=16;b<80;b++){const C=R[b-15]|0,M=_[b-15]|0,Z=U(C,M,1)^U(C,M,8)^je(C,M,7),ee=B(C,M,1)^B(C,M,8)^Fe(C,M,7),T=R[b-2]|0,O=_[b-2]|0,W=U(T,O,19)^V(T,O,61)^je(T,O,6),te=B(T,O,19)^q(T,O,61)^Fe(T,O,6),G=kt(ee,te,_[b-7],_[b-16]),se=jt(G,Z,W,R[b-7],R[b-16]);R[b]=se|0,_[b]=G|0}let{Ah:r,Al:n,Bh:a,Bl:o,Ch:i,Cl:u,Dh:f,Dl:l,Eh:c,El:d,Fh:h,Fl:m,Gh:x,Gl:A,Hh:D,Hl:k}=this;for(let b=0;b<80;b++){const C=U(c,d,14)^U(c,d,18)^V(c,d,41),M=B(c,d,14)^B(c,d,18)^q(c,d,41),Z=c&h^~c&x,ee=d&m^~d&A,T=Ft(k,M,ee,qt[b],_[b]),O=Wt(T,D,C,Z,Vt[b],R[b]),W=T|0,te=U(r,n,28)^V(r,n,34)^V(r,n,39),G=B(r,n,28)^q(r,n,34)^q(r,n,39),se=r&a^r&i^a&i,ct=n&o^n&u^o&u;D=x|0,k=A|0,x=h|0,A=m|0,h=c|0,m=d|0,{h:c,l:d}=v(f|0,l|0,O|0,W|0),f=i|0,l=u|0,i=a|0,u=o|0,a=r|0,o=n|0;const Ue=$t(W,G,ct);r=Dt(Ue,O,te,se),n=Ue|0}({h:r,l:n}=v(this.Ah|0,this.Al|0,r|0,n|0)),{h:a,l:o}=v(this.Bh|0,this.Bl|0,a|0,o|0),{h:i,l:u}=v(this.Ch|0,this.Cl|0,i|0,u|0),{h:f,l}=v(this.Dh|0,this.Dl|0,f|0,l|0),{h:c,l:d}=v(this.Eh|0,this.El|0,c|0,d|0),{h,l:m}=v(this.Fh|0,this.Fl|0,h|0,m|0),{h:x,l:A}=v(this.Gh|0,this.Gl|0,x|0,A|0),{h:D,l:k}=v(this.Hh|0,this.Hl|0,D|0,k|0),this.set(r,n,a,o,i,u,f,l,c,d,h,m,x,A,D,k)}roundClean(){H(R,_)}destroy(){H(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}class Kt extends et{constructor(){super(48),this.Ah=g[0]|0,this.Al=g[1]|0,this.Bh=g[2]|0,this.Bl=g[3]|0,this.Ch=g[4]|0,this.Cl=g[5]|0,this.Dh=g[6]|0,this.Dl=g[7]|0,this.Eh=g[8]|0,this.El=g[9]|0,this.Fh=g[10]|0,this.Fl=g[11]|0,this.Gh=g[12]|0,this.Gl=g[13]|0,this.Hh=g[14]|0,this.Hl=g[15]|0}}const Ss=Q(()=>new zt),Is=Q(()=>new et),Rs=Q(()=>new Kt);class tt extends p{constructor({cause:e,message:t}={}){var n;const r=(n=t==null?void 0:t.replace("execution reverted: ",""))==null?void 0:n.replace("execution reverted","");super(`Execution reverted ${r?`with reason: ${r}`:"for an unknown reason"}.`,{cause:e,name:"ExecutionRevertedError"})}}Object.defineProperty(tt,"code",{enumerable:!0,configurable:!0,writable:!0,value:3});Object.defineProperty(tt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/});class Xt extends p{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\`maxFeePerGas\`${t?` = ${K(t)} gwei`:""}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:"FeeCapTooHighError"})}}Object.defineProperty(Xt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\^256-1|fee cap higher than 2\^256-1/});class Jt extends p{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\`maxFeePerGas\`${t?` = ${K(t)}`:""} gwei) cannot be lower than the block base fee.`,{cause:e,name:"FeeCapTooLowError"})}}Object.defineProperty(Jt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/});class Yt extends p{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:""}is higher than the next one expected.`,{cause:e,name:"NonceTooHighError"})}}Object.defineProperty(Yt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/});class Qt extends p{constructor({cause:e,nonce:t}={}){super([`Nonce provided for the transaction ${t?`(${t}) `:""}is lower than the current nonce of the account.`,"Try increasing the nonce or find the latest nonce with `getTransactionCount`."].join(`
|
|
3
|
+
`),{cause:e,name:"NonceTooLowError"})}}Object.defineProperty(Qt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/});class Zt extends p{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:""}exceeds the maximum allowed nonce.`,{cause:e,name:"NonceMaxValueError"})}}Object.defineProperty(Zt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/});class es extends p{constructor({cause:e}={}){super(["The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account."].join(`
|
|
4
|
+
`),{cause:e,metaMessages:["This error could arise when the account does not have enough funds to:"," - pay for the total gas fee,"," - pay for the value to send."," ","The cost of the transaction is calculated as `gas * gas fee + value`, where:"," - `gas` is the amount of gas needed for transaction to execute,"," - `gas fee` is the gas fee,"," - `value` is the amount of ether to send to the recipient."],name:"InsufficientFundsError"})}}Object.defineProperty(es,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/});class ts extends p{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:""}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:"IntrinsicGasTooHighError"})}}Object.defineProperty(ts,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/});class ss extends p{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:""}provided for the transaction is too low.`,{cause:e,name:"IntrinsicGasTooLowError"})}}Object.defineProperty(ss,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/});class rs extends p{constructor({cause:e}){super("The transaction type is not supported for this chain.",{cause:e,name:"TransactionTypeNotSupportedError"})}}Object.defineProperty(rs,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/});class ns extends p{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:r}={}){super([`The provided tip (\`maxPriorityFeePerGas\`${t?` = ${K(t)} gwei`:""}) cannot be higher than the fee cap (\`maxFeePerGas\`${r?` = ${K(r)} gwei`:""}).`].join(`
|
|
5
|
+
`),{cause:e,name:"TipAboveFeeCapError"})}}Object.defineProperty(ns,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/});class _s extends p{constructor({cause:e}){super(`An error occurred while executing: ${e==null?void 0:e.shortMessage}`,{cause:e,name:"UnknownNodeError"})}}class Hs extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){const t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){const r=this.keys().next().value;r&&this.delete(r)}return this}}const as=BigInt(0),F=BigInt(1),os=BigInt(2),is=BigInt(7),cs=BigInt(256),us=BigInt(113),st=[],rt=[],nt=[];for(let s=0,e=F,t=1,r=0;s<24;s++){[t,r]=[r,(2*t+3*r)%5],st.push(2*(5*r+t)),rt.push((s+1)*(s+2)/2%64);let n=as;for(let a=0;a<7;a++)e=(e<<F^(e>>is)*us)%cs,e&os&&(n^=F<<(F<<BigInt(a))-F);nt.push(n)}const at=Qe(nt,!0),ls=at[0],ds=at[1],We=(s,e,t)=>t>32?Ut(s,e,t):Pt(s,e,t),Ge=(s,e,t)=>t>32?Bt(s,e,t):Lt(s,e,t);function hs(s,e=24){const t=new Uint32Array(10);for(let r=24-e;r<24;r++){for(let o=0;o<10;o++)t[o]=s[o]^s[o+10]^s[o+20]^s[o+30]^s[o+40];for(let o=0;o<10;o+=2){const i=(o+8)%10,u=(o+2)%10,f=t[u],l=t[u+1],c=We(f,l,1)^t[i],d=Ge(f,l,1)^t[i+1];for(let h=0;h<50;h+=10)s[o+h]^=c,s[o+h+1]^=d}let n=s[2],a=s[3];for(let o=0;o<24;o++){const i=rt[o],u=We(n,a,i),f=Ge(n,a,i),l=st[o];n=s[l],a=s[l+1],s[l]=u,s[l+1]=f}for(let o=0;o<50;o+=10){for(let i=0;i<10;i++)t[i]=s[o+i];for(let i=0;i<10;i++)s[o+i]^=~t[(i+2)%10]&t[(i+4)%10]}s[0]^=ls[r],s[1]^=ds[r]}H(t)}class ce extends ie{constructor(e,t,r,n=!1,a=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=r,this.enableXOF=n,this.rounds=a,X(r),!(0<e&&e<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=Ot(this.state)}clone(){return this._cloneInto()}keccak(){De(this.state32),hs(this.state32,this.rounds),De(this.state32),this.posOut=0,this.pos=0}update(e){$(this),e=Y(e),P(e);const{blockLen:t,state:r}=this,n=e.length;for(let a=0;a<n;){const o=Math.min(t-this.pos,n-a);for(let i=0;i<o;i++)r[this.pos++]^=e[a++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:e,suffix:t,pos:r,blockLen:n}=this;e[r]^=t,(t&128)!==0&&r===n-1&&this.keccak(),e[n-1]^=128,this.keccak()}writeInto(e){$(this,!1),P(e),this.finish();const t=this.state,{blockLen:r}=this;for(let n=0,a=e.length;n<a;){this.posOut>=r&&this.keccak();const o=Math.min(r-this.posOut,a-n);e.set(t.subarray(this.posOut,this.posOut+o),n),this.posOut+=o,n+=o}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return X(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(Je(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,H(this.state)}_cloneInto(e){const{blockLen:t,suffix:r,outputLen:n,rounds:a,enableXOF:o}=this;return e||(e=new ce(t,r,n,o,a)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=a,e.suffix=r,e.outputLen=n,e.enableXOF=o,e.destroyed=this.destroyed,e}}const fs=(s,e,t)=>Q(()=>new ce(e,s,t)),Ps=fs(1,136,256/8),ue=(s,e,t)=>JSON.stringify(s,(r,n)=>typeof n=="bigint"?n.toString():n,t),Ls=s=>s,le=s=>s;class Us extends p{constructor({body:e,cause:t,details:r,headers:n,status:a,url:o}){super("HTTP request failed.",{cause:t,details:r,metaMessages:[a&&`Status: ${a}`,`URL: ${le(o)}`,e&&`Request body: ${ue(e)}`].filter(Boolean),name:"HttpRequestError"}),Object.defineProperty(this,"body",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"headers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"status",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=e,this.headers=n,this.status=a,this.url=o}}class ps extends p{constructor({body:e,error:t,url:r}){super("RPC Request failed.",{cause:t,details:t.message,metaMessages:[`URL: ${le(r)}`,`Request body: ${ue(e)}`],name:"RpcRequestError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=t.code,this.data=t.data,this.url=r}}class Bs extends p{constructor({body:e,url:t}){super("The request took too long to respond.",{details:"The request timed out.",metaMessages:[`URL: ${le(t)}`,`Request body: ${ue(e)}`],name:"TimeoutError"}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}const bs=-1;class E extends p{constructor(e,{code:t,docsPath:r,metaMessages:n,name:a,shortMessage:o}){super(o,{cause:e,docsPath:r,metaMessages:n||(e==null?void 0:e.metaMessages),name:a||"RpcError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=a||e.name,this.code=e instanceof ps?e.code:t??bs}}class w extends E{constructor(e,t){super(e,t),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}}class de extends E{constructor(e){super(e,{code:de.code,name:"ParseRpcError",shortMessage:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."})}}Object.defineProperty(de,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32700});class he extends E{constructor(e){super(e,{code:he.code,name:"InvalidRequestRpcError",shortMessage:"JSON is not a valid request object."})}}Object.defineProperty(he,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32600});class fe extends E{constructor(e,{method:t}={}){super(e,{code:fe.code,name:"MethodNotFoundRpcError",shortMessage:`The method${t?` "${t}"`:""} does not exist / is not available.`})}}Object.defineProperty(fe,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32601});class pe extends E{constructor(e){super(e,{code:pe.code,name:"InvalidParamsRpcError",shortMessage:["Invalid parameters were provided to the RPC method.","Double check you have provided the correct parameters."].join(`
|
|
6
|
+
`)})}}Object.defineProperty(pe,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});class be extends E{constructor(e){super(e,{code:be.code,name:"InternalRpcError",shortMessage:"An internal error was received."})}}Object.defineProperty(be,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});class me extends E{constructor(e){super(e,{code:me.code,name:"InvalidInputRpcError",shortMessage:["Missing or invalid parameters.","Double check you have provided the correct parameters."].join(`
|
|
7
|
+
`)})}}Object.defineProperty(me,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});class ge extends E{constructor(e){super(e,{code:ge.code,name:"ResourceNotFoundRpcError",shortMessage:"Requested resource not found."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ResourceNotFoundRpcError"})}}Object.defineProperty(ge,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});class ye extends E{constructor(e){super(e,{code:ye.code,name:"ResourceUnavailableRpcError",shortMessage:"Requested resource not available."})}}Object.defineProperty(ye,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});class xe extends E{constructor(e){super(e,{code:xe.code,name:"TransactionRejectedRpcError",shortMessage:"Transaction creation failed."})}}Object.defineProperty(xe,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});class Ee extends E{constructor(e,{method:t}={}){super(e,{code:Ee.code,name:"MethodNotSupportedRpcError",shortMessage:`Method${t?` "${t}"`:""} is not supported.`})}}Object.defineProperty(Ee,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});class we extends E{constructor(e){super(e,{code:we.code,name:"LimitExceededRpcError",shortMessage:"Request exceeds defined limit."})}}Object.defineProperty(we,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});class Ae extends E{constructor(e){super(e,{code:Ae.code,name:"JsonRpcVersionUnsupportedError",shortMessage:"Version of JSON-RPC protocol is not supported."})}}Object.defineProperty(Ae,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});class Ne extends w{constructor(e){super(e,{code:Ne.code,name:"UserRejectedRequestError",shortMessage:"User rejected the request."})}}Object.defineProperty(Ne,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});class Te extends w{constructor(e){super(e,{code:Te.code,name:"UnauthorizedProviderError",shortMessage:"The requested method and/or account has not been authorized by the user."})}}Object.defineProperty(Te,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});class Oe extends w{constructor(e,{method:t}={}){super(e,{code:Oe.code,name:"UnsupportedProviderMethodError",shortMessage:`The Provider does not support the requested method${t?` " ${t}"`:""}.`})}}Object.defineProperty(Oe,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});class ve extends w{constructor(e){super(e,{code:ve.code,name:"ProviderDisconnectedError",shortMessage:"The Provider is disconnected from all chains."})}}Object.defineProperty(ve,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});class Ce extends w{constructor(e){super(e,{code:Ce.code,name:"ChainDisconnectedError",shortMessage:"The Provider is not connected to the requested chain."})}}Object.defineProperty(Ce,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});class Me extends w{constructor(e){super(e,{code:Me.code,name:"SwitchChainError",shortMessage:"An error occurred when attempting to switch chain."})}}Object.defineProperty(Me,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});class Se extends w{constructor(e){super(e,{code:Se.code,name:"UnsupportedNonOptionalCapabilityError",shortMessage:"This Wallet does not support a capability that was not marked as optional."})}}Object.defineProperty(Se,"code",{enumerable:!0,configurable:!0,writable:!0,value:5700});class Ie extends w{constructor(e){super(e,{code:Ie.code,name:"UnsupportedChainIdError",shortMessage:"This Wallet does not support the requested chain ID."})}}Object.defineProperty(Ie,"code",{enumerable:!0,configurable:!0,writable:!0,value:5710});class Re extends w{constructor(e){super(e,{code:Re.code,name:"DuplicateIdError",shortMessage:"There is already a bundle submitted with this ID."})}}Object.defineProperty(Re,"code",{enumerable:!0,configurable:!0,writable:!0,value:5720});class _e extends w{constructor(e){super(e,{code:_e.code,name:"UnknownBundleIdError",shortMessage:"This bundle id is unknown / has not been submitted"})}}Object.defineProperty(_e,"code",{enumerable:!0,configurable:!0,writable:!0,value:5730});class He extends w{constructor(e){super(e,{code:He.code,name:"BundleTooLargeError",shortMessage:"The call bundle is too large for the Wallet to process."})}}Object.defineProperty(He,"code",{enumerable:!0,configurable:!0,writable:!0,value:5740});class Pe extends w{constructor(e){super(e,{code:Pe.code,name:"AtomicReadyWalletRejectedUpgradeError",shortMessage:"The Wallet can support atomicity after an upgrade, but the user rejected the upgrade."})}}Object.defineProperty(Pe,"code",{enumerable:!0,configurable:!0,writable:!0,value:5750});class Le extends w{constructor(e){super(e,{code:Le.code,name:"AtomicityNotSupportedError",shortMessage:"The wallet does not support atomic execution but the request requires it."})}}Object.defineProperty(Le,"code",{enumerable:!0,configurable:!0,writable:!0,value:5760});class $s extends E{constructor(e){super(e,{name:"UnknownRpcError",shortMessage:"An unknown RPC error occurred."})}}class ot extends ie{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,Tt(e);const r=Y(t);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const n=this.blockLen,a=new Uint8Array(n);a.set(r.length>n?e.create().update(r).digest():r);for(let o=0;o<a.length;o++)a[o]^=54;this.iHash.update(a),this.oHash=e.create();for(let o=0;o<a.length;o++)a[o]^=106;this.oHash.update(a),H(a)}update(e){return $(this),this.iHash.update(e),this}digestInto(e){$(this),P(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){const e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));const{oHash:t,iHash:r,finished:n,destroyed:a,blockLen:o,outputLen:i}=this;return e=e,e.finished=n,e.destroyed=a,e.blockLen=o,e.outputLen=i,e.oHash=t._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const ms=(s,e,t)=>new ot(s,e).update(t).digest();ms.create=(s,e)=>new ot(s,e);const Ds=[{inputs:[{components:[{name:"target",type:"address"},{name:"allowFailure",type:"bool"},{name:"callData",type:"bytes"}],name:"calls",type:"tuple[]"}],name:"aggregate3",outputs:[{components:[{name:"success",type:"bool"},{name:"returnData",type:"bytes"}],name:"returnData",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockTimestamp",outputs:[{internalType:"uint256",name:"timestamp",type:"uint256"}],stateMutability:"view",type:"function"}],ks=[{name:"query",type:"function",stateMutability:"view",inputs:[{type:"tuple[]",name:"queries",components:[{type:"address",name:"sender"},{type:"string[]",name:"urls"},{type:"bytes",name:"data"}]}],outputs:[{type:"bool[]",name:"failures"},{type:"bytes[]",name:"responses"}]},{name:"HttpError",type:"error",inputs:[{type:"uint16",name:"status"},{type:"string",name:"message"}]}],it=[{inputs:[{name:"dns",type:"bytes"}],name:"DNSDecodingFailed",type:"error"},{inputs:[{name:"ens",type:"string"}],name:"DNSEncodingFailed",type:"error"},{inputs:[],name:"EmptyAddress",type:"error"},{inputs:[{name:"status",type:"uint16"},{name:"message",type:"string"}],name:"HttpError",type:"error"},{inputs:[],name:"InvalidBatchGatewayResponse",type:"error"},{inputs:[{name:"errorData",type:"bytes"}],name:"ResolverError",type:"error"},{inputs:[{name:"name",type:"bytes"},{name:"resolver",type:"address"}],name:"ResolverNotContract",type:"error"},{inputs:[{name:"name",type:"bytes"}],name:"ResolverNotFound",type:"error"},{inputs:[{name:"primary",type:"string"},{name:"primaryAddress",type:"bytes"}],name:"ReverseAddressMismatch",type:"error"},{inputs:[{internalType:"bytes4",name:"selector",type:"bytes4"}],name:"UnsupportedResolverProfile",type:"error"}],js=[...it,{name:"resolveWithGateways",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"},{name:"gateways",type:"string[]"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]}],Fs=[...it,{name:"reverseWithGateways",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"},{type:"uint256",name:"coinType"},{type:"string[]",name:"gateways"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolver"},{type:"address",name:"reverseResolver"}]}],Ws=[{name:"text",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"key",type:"string"}],outputs:[{name:"",type:"string"}]}],Gs=[{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"}],outputs:[{name:"",type:"address"}]},{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"coinType",type:"uint256"}],outputs:[{name:"",type:"bytes"}]}],zs=[{name:"isValidSignature",type:"function",stateMutability:"view",inputs:[{name:"hash",type:"bytes32"},{name:"signature",type:"bytes"}],outputs:[{name:"",type:"bytes4"}]}],Vs=[{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function",name:"isValidSig"}],qs=[{type:"event",name:"Approval",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"event",name:"Transfer",inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"function",name:"allowance",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"transferFrom",stateMutability:"nonpayable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}];function gs(){let s=()=>{},e=()=>{};return{promise:new Promise((r,n)=>{s=r,e=n}),resolve:s,reject:e}}const ae=new Map;function Ks({fn:s,id:e,shouldSplitBatch:t,wait:r=0,sort:n}){const a=async()=>{const l=u();o();const c=l.map(({args:d})=>d);c.length!==0&&s(c).then(d=>{n&&Array.isArray(d)&&d.sort(n);for(let h=0;h<l.length;h++){const{resolve:m}=l[h];m==null||m([d[h],d])}}).catch(d=>{for(let h=0;h<l.length;h++){const{reject:m}=l[h];m==null||m(d)}})},o=()=>ae.delete(e),i=()=>u().map(({args:l})=>l),u=()=>ae.get(e)||[],f=l=>ae.set(e,[...u(),l]);return{flush:o,async schedule(l){const{promise:c,resolve:d,reject:h}=gs();return(t==null?void 0:t([...i(),l]))&&a(),u().length>0?(f({args:l,resolve:d,reject:h}),c):(f({args:l,resolve:d,reject:h}),setTimeout(a,r),c)}}}var ze={};const ys={WC_NAME_SUFFIX:".reown.id",WC_NAME_SUFFIX_LEGACY:".wcn.id",BLOCKCHAIN_API_RPC_URL:"https://rpc.walletconnect.org",PULSE_API_URL:"https://pulse.walletconnect.org",W3M_API_URL:"https://api.web3modal.org",CONNECTOR_ID:{WALLET_CONNECT:"walletConnect",INJECTED:"injected",WALLET_STANDARD:"announced",COINBASE:"coinbaseWallet",COINBASE_SDK:"coinbaseWalletSDK",BASE_ACCOUNT:"baseAccount",SAFE:"safe",LEDGER:"ledger",OKX:"okx",EIP6963:"eip6963",AUTH:"AUTH"},CONNECTOR_NAMES:{AUTH:"Auth"},AUTH_CONNECTOR_SUPPORTED_CHAINS:["eip155","solana"],LIMITS:{PENDING_TRANSACTIONS:99},CHAIN:{EVM:"eip155",SOLANA:"solana",POLKADOT:"polkadot",BITCOIN:"bip122",TON:"ton"},CHAIN_NAME_MAP:{eip155:"EVM Networks",solana:"Solana",polkadot:"Polkadot",bip122:"Bitcoin",cosmos:"Cosmos",sui:"Sui",stacks:"Stacks",ton:"TON"},ADAPTER_TYPES:{BITCOIN:"bitcoin",SOLANA:"solana",WAGMI:"wagmi",ETHERS:"ethers",ETHERS5:"ethers5",TON:"ton"},USDT_CONTRACT_ADDRESSES:["0xdac17f958d2ee523a2206206994597c13d831ec7","0xc2132d05d31c914a87c6611c10748aeb04b58e8f","0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7","0x919C1c267BC06a7039e03fcc2eF738525769109c","0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e","0x55d398326f99059fF775485246999027B3197955","0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9"],SOLANA_SPL_TOKEN_ADDRESSES:{SOL:"So11111111111111111111111111111111111111112"},HTTP_STATUS_CODES:{SERVER_ERROR:500,TOO_MANY_REQUESTS:429,SERVICE_UNAVAILABLE:503,FORBIDDEN:403},UNSUPPORTED_NETWORK_NAME:"Unknown Network",SECURE_SITE_SDK_ORIGIN:(typeof Be<"u"&&typeof ze<"u"?ze.NEXT_PUBLIC_SECURE_SITE_ORIGIN:void 0)||"https://secure.walletconnect.org",REMOTE_FEATURES_ALERTS:{MULTI_WALLET_NOT_ENABLED:{DEFAULT:{displayMessage:"Multi-Wallet Not Enabled",debugMessage:"Multi-wallet support is not enabled. Please enable it in your AppKit configuration at cloud.reown.com."},CONNECTIONS_HOOK:{displayMessage:"Multi-Wallet Not Enabled",debugMessage:"Multi-wallet support is not enabled. Please enable it in your AppKit configuration at cloud.reown.com to use the useAppKitConnections hook."},CONNECTION_HOOK:{displayMessage:"Multi-Wallet Not Enabled",debugMessage:"Multi-wallet support is not enabled. Please enable it in your AppKit configuration at cloud.reown.com to use the useAppKitConnection hook."}},HEADLESS_NOT_ENABLED:{DEFAULT:{displayMessage:"",debugMessage:"Headless support is not enabled. Please enable it with the features.headless option in the AppKit configuration and make sure your current plan supports it."}}},IS_DEVELOPMENT:typeof Be<"u"&&!1,DEFAULT_ALLOWED_ANCESTORS:["http://localhost:*","https://localhost:*","http://127.0.0.1:*","https://127.0.0.1:*","https://*.pages.dev","https://*.vercel.app","https://*.ngrok-free.app","https://secure-mobile.walletconnect.com","https://secure-mobile.walletconnect.org"],METMASK_CONNECTOR_NAME:"MetaMask",TRUST_CONNECTOR_NAME:"Trust Wallet",SOLFLARE_CONNECTOR_NAME:"Solflare",PHANTOM_CONNECTOR_NAME:"Phantom",COIN98_CONNECTOR_NAME:"Coin98",MAGIC_EDEN_CONNECTOR_NAME:"Magic Eden",BACKPACK_CONNECTOR_NAME:"Backpack",BITGET_CONNECTOR_NAME:"Bitget Wallet",FRONTIER_CONNECTOR_NAME:"Frontier",XVERSE_CONNECTOR_NAME:"Xverse Wallet",LEATHER_CONNECTOR_NAME:"Leather",OKX_CONNECTOR_NAME:"OKX Wallet",BINANCE_CONNECTOR_NAME:"Binance Wallet",EIP155:"eip155",ADD_CHAIN_METHOD:"wallet_addEthereumChain",EIP6963_ANNOUNCE_EVENT:"eip6963:announceProvider",EIP6963_REQUEST_EVENT:"eip6963:requestProvider",CONNECTOR_RDNS_MAP:{coinbaseWallet:"com.coinbase.wallet",coinbaseWalletSDK:"com.coinbase.wallet"},CONNECTOR_TYPE_EXTERNAL:"EXTERNAL",CONNECTOR_TYPE_WALLET_CONNECT:"WALLET_CONNECT",CONNECTOR_TYPE_INJECTED:"INJECTED",CONNECTOR_TYPE_ANNOUNCED:"ANNOUNCED",CONNECTOR_TYPE_AUTH:"AUTH",CONNECTOR_TYPE_MULTI_CHAIN:"MULTI_CHAIN",CONNECTOR_TYPE_W3M_AUTH:"AUTH"},Xs={caipNetworkIdToNumber(s){return s?Number(s.split(":")[1]):void 0},parseEvmChainId(s){return typeof s=="string"?this.caipNetworkIdToNumber(s):s},getNetworksByNamespace(s,e){return(s==null?void 0:s.filter(t=>t.chainNamespace===e))||[]},getFirstNetworkByNamespace(s,e){return this.getNetworksByNamespace(s,e)[0]},getNetworkNameByCaipNetworkId(s,e){var n;if(!e)return;const t=s.find(a=>a.caipNetworkId===e);if(t)return t.name;const[r]=e.split(":");return((n=ys.CHAIN_NAME_MAP)==null?void 0:n[r])||void 0}},Js=["eip155","solana","polkadot","bip122","cosmos","sui","stacks"];export{be as $,lt as A,p as B,ys as C,dt as D,tt as E,Xt as F,Jt as G,Us as H,me as I,es as J,ts as K,Hs as L,ss as M,Zt as N,Yt as O,Qt as P,rs as Q,ps as R,Ke as S,ns as T,_s as U,Bs as V,Le as W,Pe as X,He as Y,Ce as Z,Re as _,Os as a,pe as a0,he as a1,Ae as a2,we as a3,fe as a4,Ee as a5,de as a6,ve as a7,w as a8,ge as a9,Ks as aA,zs as aB,Js as aC,Xs as aD,Rs as aE,Is as aF,ye as aa,E as ab,Me as ac,xe as ad,Te as ae,_e as af,$s as ag,Ie as ah,Se as ai,Oe as aj,Ne as ak,oe as al,pt as am,ft as an,Ts as ao,mt as ap,At as aq,J as ar,Ss as as,Ps as at,Ls as au,X as av,Ms as aw,ms as ax,Cs as ay,As as az,ks as b,$e as c,Xe as d,Gs as e,K as f,le as g,Et as h,ht as i,re as j,Ws as k,Fs as l,xt as m,gt as n,Ds as o,qs as p,Vs as q,vs as r,ue as s,Ns as t,js as u,wt as v,gs as w,ws as x,ut as y,Es as z};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as T,u as O,p as x,R as A,S as g,x as B,E as D,y as M,W as F,C as f,B as v,a as L,z as N,D as z,F as R,e as _,i as H,G as V,k as $,l as q}from"./index-MkZbQyDw.js";import{C as P}from"./NetworkUtil-BCvAceLL.js";const I={getGasPriceInEther(n,t){const o=t*n;return Number(o)/1e18},getGasPriceInUSD(n,t,o){const s=I.getGasPriceInEther(t,o);return T.bigNumber(n).times(s).toNumber()},getPriceImpact({sourceTokenAmount:n,sourceTokenPriceInUSD:t,toTokenPriceInUSD:o,toTokenAmount:s}){const c=T.bigNumber(n).times(t),r=T.bigNumber(s).times(o);return c.minus(r).div(c).times(100).toNumber()},getMaxSlippage(n,t){const o=T.bigNumber(n).div(100);return T.multiply(t,o).toNumber()},getProviderFee(n,t=.0085){return T.bigNumber(n).times(t).toString()},isInsufficientNetworkTokenForGas(n,t){const o=t||"0";return T.bigNumber(n).eq(0)?!0:T.bigNumber(T.bigNumber(o)).gt(n)},isInsufficientSourceTokenForSwap(n,t,o){var r,d;const s=(d=(r=o==null?void 0:o.find(l=>l.address===t))==null?void 0:r.quantity)==null?void 0:d.numeric;return T.bigNumber(s||"0").lt(n)}},W=15e4,Q=6,k={initializing:!1,initialized:!1,loadingPrices:!1,loadingQuote:!1,loadingApprovalTransaction:!1,loadingBuildTransaction:!1,loadingTransaction:!1,switchingTokens:!1,fetchError:!1,approvalTransaction:void 0,swapTransaction:void 0,transactionError:void 0,sourceToken:void 0,sourceTokenAmount:"",sourceTokenPriceInUSD:0,toToken:void 0,toTokenAmount:"",toTokenPriceInUSD:0,networkPrice:"0",networkBalanceInUSD:"0",networkTokenSymbol:"",inputError:void 0,slippage:_.CONVERT_SLIPPAGE_TOLERANCE,tokens:void 0,popularTokens:void 0,suggestedTokens:void 0,foundTokens:void 0,myTokensWithBalance:void 0,tokensPriceMap:{},gasFee:"0",gasPriceInUSD:0,priceImpact:void 0,maxSlippage:void 0,providerFee:void 0},e=x({...k}),E={state:e,subscribe(n){return q(e,()=>n(e))},subscribeKey(n,t){return $(e,n,t)},getParams(){var i,u,p,w,S,h,y,C,b;const n=f.state.activeChain,t=((i=f.getAccountData(n))==null?void 0:i.caipAddress)??f.state.activeCaipAddress,o=L.getPlainAddress(t),s=H(),c=V.getConnectorId(f.state.activeChain);if(!o)throw new Error("No address found to swap the tokens from.");const r=!((u=e.toToken)!=null&&u.address)||!((p=e.toToken)!=null&&p.decimals),d=!((w=e.sourceToken)!=null&&w.address)||!((S=e.sourceToken)!=null&&S.decimals)||!T.bigNumber(e.sourceTokenAmount).gt(0),l=!e.sourceTokenAmount;return{networkAddress:s,fromAddress:o,fromCaipAddress:t,sourceTokenAddress:(h=e.sourceToken)==null?void 0:h.address,toTokenAddress:(y=e.toToken)==null?void 0:y.address,toTokenAmount:e.toTokenAmount,toTokenDecimals:(C=e.toToken)==null?void 0:C.decimals,sourceTokenAmount:e.sourceTokenAmount,sourceTokenDecimals:(b=e.sourceToken)==null?void 0:b.decimals,invalidToToken:r,invalidSourceToken:d,invalidSourceTokenAmount:l,availableToSwap:t&&!r&&!d&&!l,isAuthConnector:c===P.CONNECTOR_ID.AUTH}},async setSourceToken(n){if(!n){e.sourceToken=n,e.sourceTokenAmount="",e.sourceTokenPriceInUSD=0;return}e.sourceToken=n,await a.setTokenPrice(n.address,"sourceToken")},setSourceTokenAmount(n){e.sourceTokenAmount=n},async setToToken(n){if(!n){e.toToken=n,e.toTokenAmount="",e.toTokenPriceInUSD=0;return}e.toToken=n,await a.setTokenPrice(n.address,"toToken")},setToTokenAmount(n){e.toTokenAmount=n?T.toFixed(n,Q):""},async setTokenPrice(n,t){let o=e.tokensPriceMap[n]||0;o||(e.loadingPrices=!0,o=await a.getAddressPrice(n)),t==="sourceToken"?e.sourceTokenPriceInUSD=o:t==="toToken"&&(e.toTokenPriceInUSD=o),e.loadingPrices&&(e.loadingPrices=!1),a.getParams().availableToSwap&&!e.switchingTokens&&a.swapTokens()},async switchTokens(){if(!(e.initializing||!e.initialized||e.switchingTokens)){e.switchingTokens=!0;try{const n=e.toToken?{...e.toToken}:void 0,t=e.sourceToken?{...e.sourceToken}:void 0,o=n&&e.toTokenAmount===""?"1":e.toTokenAmount;a.setSourceTokenAmount(o),a.setToTokenAmount(""),await a.setSourceToken(n),await a.setToToken(t),e.switchingTokens=!1,a.swapTokens()}catch(n){throw e.switchingTokens=!1,n}}},resetState(){e.myTokensWithBalance=k.myTokensWithBalance,e.tokensPriceMap=k.tokensPriceMap,e.initialized=k.initialized,e.initializing=k.initializing,e.switchingTokens=k.switchingTokens,e.sourceToken=k.sourceToken,e.sourceTokenAmount=k.sourceTokenAmount,e.sourceTokenPriceInUSD=k.sourceTokenPriceInUSD,e.toToken=k.toToken,e.toTokenAmount=k.toTokenAmount,e.toTokenPriceInUSD=k.toTokenPriceInUSD,e.networkPrice=k.networkPrice,e.networkTokenSymbol=k.networkTokenSymbol,e.networkBalanceInUSD=k.networkBalanceInUSD,e.inputError=k.inputError},resetValues(){var o;const{networkAddress:n}=a.getParams(),t=(o=e.tokens)==null?void 0:o.find(s=>s.address===n);a.setSourceToken(t),a.setToToken(void 0)},getApprovalLoadingState(){return e.loadingApprovalTransaction},clearError(){e.transactionError=void 0},async initializeState(){if(!e.initializing){if(e.initializing=!0,!e.initialized)try{await a.fetchTokens(),e.initialized=!0}catch{e.initialized=!1,g.showError("Failed to initialize swap"),A.goBack()}e.initializing=!1}},async fetchTokens(){var o;const{networkAddress:n}=a.getParams();await a.getNetworkTokenPrice(),await a.getMyTokensWithBalance();const t=(o=e.myTokensWithBalance)==null?void 0:o.find(s=>s.address===n);t&&(e.networkTokenSymbol=t.symbol,a.setSourceToken(t),a.setSourceTokenAmount("0"))},async getTokenList(){var t,o;const n=(t=f.state.activeCaipNetwork)==null?void 0:t.caipNetworkId;if(!(e.caipNetworkId===n&&e.tokens))try{e.tokensLoading=!0;const s=await N.getTokenList(n);e.tokens=s,e.caipNetworkId=n,e.popularTokens=s.sort((i,u)=>i.symbol<u.symbol?-1:i.symbol>u.symbol?1:0);const r=(n&&((o=_.SUGGESTED_TOKENS_BY_CHAIN)==null?void 0:o[n])||[]).map(i=>s.find(u=>u.symbol===i)).filter(i=>!!i),l=(_.SWAP_SUGGESTED_TOKENS||[]).map(i=>s.find(u=>u.symbol===i)).filter(i=>!!i).filter(i=>!r.some(u=>u.address===i.address));e.suggestedTokens=[...r,...l]}catch{e.tokens=[],e.popularTokens=[],e.suggestedTokens=[]}finally{e.tokensLoading=!1}},async getAddressPrice(n){var i,u;const t=e.tokensPriceMap[n];if(t)return t;const o=await v.fetchTokenPrice({addresses:[n]}),s=(o==null?void 0:o.fungibles)||[],c=[...e.tokens||[],...e.myTokensWithBalance||[]],r=(i=c==null?void 0:c.find(p=>p.address===n))==null?void 0:i.symbol,d=((u=s.find(p=>p.symbol.toLowerCase()===(r==null?void 0:r.toLowerCase())))==null?void 0:u.price)||0,l=parseFloat(d.toString());return e.tokensPriceMap[n]=l,l},async getNetworkTokenPrice(){var c;const{networkAddress:n}=a.getParams(),o=(c=(await v.fetchTokenPrice({addresses:[n]}).catch(()=>(g.showError("Failed to fetch network token price"),{fungibles:[]}))).fungibles)==null?void 0:c[0],s=(o==null?void 0:o.price.toString())||"0";e.tokensPriceMap[n]=parseFloat(s),e.networkTokenSymbol=(o==null?void 0:o.symbol)||"",e.networkPrice=s},async getMyTokensWithBalance(n){const t=await R.getMyTokensWithBalance(n),o=N.mapBalancesToSwapTokens(t);o&&(await a.getInitialGasPrice(),a.setBalances(o))},setBalances(n){const{networkAddress:t}=a.getParams(),o=f.state.activeCaipNetwork;if(!o)return;const s=n.find(c=>c.address===t);n.forEach(c=>{e.tokensPriceMap[c.address]=c.price||0}),e.myTokensWithBalance=n.filter(c=>c.address.startsWith(o.caipNetworkId)),e.networkBalanceInUSD=s?T.multiply(s.quantity.numeric,s.price).toString():"0"},async getInitialGasPrice(){var t,o;const n=await N.fetchGasPrice();if(!n)return{gasPrice:null,gasPriceInUSD:null};switch((o=(t=f.state)==null?void 0:t.activeCaipNetwork)==null?void 0:o.chainNamespace){case P.CHAIN.SOLANA:return e.gasFee=n.standard??"0",e.gasPriceInUSD=T.multiply(n.standard,e.networkPrice).div(1e9).toNumber(),{gasPrice:BigInt(e.gasFee),gasPriceInUSD:Number(e.gasPriceInUSD)};case P.CHAIN.EVM:default:const s=n.standard??"0",c=BigInt(s),r=BigInt(W),d=I.getGasPriceInUSD(e.networkPrice,r,c);return e.gasFee=s,e.gasPriceInUSD=d,{gasPrice:c,gasPriceInUSD:d}}},async swapTokens(){var r,d,l;const n=(r=f.getAccountData())==null?void 0:r.address,t=e.sourceToken,o=e.toToken,s=T.bigNumber(e.sourceTokenAmount).gt(0);if(s||a.setToTokenAmount(""),!o||!t||e.loadingPrices||!s||!n)return;e.loadingQuote=!0;const c=T.bigNumber(e.sourceTokenAmount).times(10**t.decimals).round(0);try{const i=await v.fetchSwapQuote({userAddress:n,from:t.address,to:o.address,gasPrice:e.gasFee,amount:c.toString()});e.loadingQuote=!1;const u=(l=(d=i==null?void 0:i.quotes)==null?void 0:d[0])==null?void 0:l.toAmount;if(!u){z.open({displayMessage:"Incorrect amount",debugMessage:"Please enter a valid amount"},"error");return}const p=T.bigNumber(u).div(10**o.decimals).toString();a.setToTokenAmount(p),a.hasInsufficientToken(e.sourceTokenAmount,t.address)?e.inputError="Insufficient balance":(e.inputError=void 0,a.setTransactionDetails())}catch(i){const u=await N.handleSwapError(i);e.loadingQuote=!1,e.inputError=u||"Insufficient balance"}},async getTransaction(){const{fromCaipAddress:n,availableToSwap:t}=a.getParams(),o=e.sourceToken,s=e.toToken;if(!(!n||!t||!o||!s||e.loadingQuote))try{e.loadingBuildTransaction=!0;const c=await N.fetchSwapAllowance({userAddress:n,tokenAddress:o.address,sourceTokenAmount:e.sourceTokenAmount,sourceTokenDecimals:o.decimals});let r;return c?r=await a.createSwapTransaction():r=await a.createAllowanceTransaction(),e.loadingBuildTransaction=!1,e.fetchError=!1,r}catch{A.goBack(),g.showError("Failed to check allowance"),e.loadingBuildTransaction=!1,e.approvalTransaction=void 0,e.swapTransaction=void 0,e.fetchError=!0;return}},async createAllowanceTransaction(){const{fromCaipAddress:n,sourceTokenAddress:t,toTokenAddress:o}=a.getParams();if(!(!n||!o)){if(!t)throw new Error("createAllowanceTransaction - No source token address found.");try{const s=await v.generateApproveCalldata({from:t,to:o,userAddress:n}),c=L.getPlainAddress(s.tx.from);if(!c)throw new Error("SwapController:createAllowanceTransaction - address is required");const r={data:s.tx.data,to:c,gasPrice:BigInt(s.tx.eip155.gasPrice),value:BigInt(s.tx.value),toAmount:e.toTokenAmount};return e.swapTransaction=void 0,e.approvalTransaction={data:r.data,to:r.to,gasPrice:r.gasPrice,value:r.value,toAmount:r.toAmount},{data:r.data,to:r.to,gasPrice:r.gasPrice,value:r.value,toAmount:r.toAmount}}catch{A.goBack(),g.showError("Failed to create approval transaction"),e.approvalTransaction=void 0,e.swapTransaction=void 0,e.fetchError=!0;return}}},async createSwapTransaction(){var d;const{networkAddress:n,fromCaipAddress:t,sourceTokenAmount:o}=a.getParams(),s=e.sourceToken,c=e.toToken;if(!t||!o||!s||!c)return;const r=(d=B.parseUnits(o,s.decimals))==null?void 0:d.toString();try{const l=await v.generateSwapCalldata({userAddress:t,from:s.address,to:c.address,amount:r,disableEstimate:!0}),i=s.address===n,u=BigInt(l.tx.eip155.gas),p=BigInt(l.tx.eip155.gasPrice),w=L.getPlainAddress(l.tx.to);if(!w)throw new Error("SwapController:createSwapTransaction - address is required");const S={data:l.tx.data,to:w,gas:u,gasPrice:p,value:BigInt(i?r??"0":"0"),toAmount:e.toTokenAmount};return e.gasPriceInUSD=I.getGasPriceInUSD(e.networkPrice,u,p),e.approvalTransaction=void 0,e.swapTransaction=S,S}catch{A.goBack(),g.showError("Failed to create transaction"),e.approvalTransaction=void 0,e.swapTransaction=void 0,e.fetchError=!0;return}},onEmbeddedWalletApprovalSuccess(){g.showLoading("Approve limit increase in your wallet"),A.replace("SwapPreview")},async sendTransactionForApproval(n){var c,r,d;const{fromAddress:t,isAuthConnector:o}=a.getParams();e.loadingApprovalTransaction=!0,o?A.pushTransactionStack({onSuccess:a.onEmbeddedWalletApprovalSuccess}):g.showLoading("Approve limit increase in your wallet");try{await B.sendTransaction({address:t,to:n.to,data:n.data,value:n.value,chainNamespace:P.CHAIN.EVM}),await a.swapTokens(),await a.getTransaction(),e.approvalTransaction=void 0,e.loadingApprovalTransaction=!1}catch(l){const i=l;e.transactionError=i==null?void 0:i.displayMessage,e.loadingApprovalTransaction=!1,g.showError((i==null?void 0:i.displayMessage)||"Transaction error"),D.sendEvent({type:"track",event:"SWAP_APPROVAL_ERROR",properties:{message:(i==null?void 0:i.displayMessage)||(i==null?void 0:i.message)||"Unknown",network:((c=f.state.activeCaipNetwork)==null?void 0:c.caipNetworkId)||"",swapFromToken:((r=a.state.sourceToken)==null?void 0:r.symbol)||"",swapToToken:((d=a.state.toToken)==null?void 0:d.symbol)||"",swapFromAmount:a.state.sourceTokenAmount||"",swapToAmount:a.state.toTokenAmount||"",isSmartAccount:M(P.CHAIN.EVM)===F.ACCOUNT_TYPES.SMART_ACCOUNT}})}},async sendTransactionForSwap(n){var d,l,i,u,p,w,S,h,y,C,b,G;if(!n)return;const{fromAddress:t,toTokenAmount:o,isAuthConnector:s}=a.getParams();e.loadingTransaction=!0;const c=`Swapping ${(d=e.sourceToken)==null?void 0:d.symbol} to ${T.formatNumberToLocalString(o,3)} ${(l=e.toToken)==null?void 0:l.symbol}`,r=`Swapped ${(i=e.sourceToken)==null?void 0:i.symbol} to ${T.formatNumberToLocalString(o,3)} ${(u=e.toToken)==null?void 0:u.symbol}`;s?A.pushTransactionStack({onSuccess(){A.replace("Account"),g.showLoading(c),E.resetState()}}):g.showLoading("Confirm transaction in your wallet");try{const U=[(p=e.sourceToken)==null?void 0:p.address,(w=e.toToken)==null?void 0:w.address].join(","),m=await B.sendTransaction({address:t,to:n.to,data:n.data,value:n.value,chainNamespace:P.CHAIN.EVM});return e.loadingTransaction=!1,g.showSuccess(r),D.sendEvent({type:"track",event:"SWAP_SUCCESS",properties:{network:((S=f.state.activeCaipNetwork)==null?void 0:S.caipNetworkId)||"",swapFromToken:((h=a.state.sourceToken)==null?void 0:h.symbol)||"",swapToToken:((y=a.state.toToken)==null?void 0:y.symbol)||"",swapFromAmount:a.state.sourceTokenAmount||"",swapToAmount:a.state.toTokenAmount||"",isSmartAccount:M(P.CHAIN.EVM)===F.ACCOUNT_TYPES.SMART_ACCOUNT}}),E.resetState(),s||A.replace("Account"),E.getMyTokensWithBalance(U),m}catch(U){const m=U;e.transactionError=m==null?void 0:m.displayMessage,e.loadingTransaction=!1,g.showError((m==null?void 0:m.displayMessage)||"Transaction error"),D.sendEvent({type:"track",event:"SWAP_ERROR",properties:{message:(m==null?void 0:m.displayMessage)||(m==null?void 0:m.message)||"Unknown",network:((C=f.state.activeCaipNetwork)==null?void 0:C.caipNetworkId)||"",swapFromToken:((b=a.state.sourceToken)==null?void 0:b.symbol)||"",swapToToken:((G=a.state.toToken)==null?void 0:G.symbol)||"",swapFromAmount:a.state.sourceTokenAmount||"",swapToAmount:a.state.toTokenAmount||"",isSmartAccount:M(P.CHAIN.EVM)===F.ACCOUNT_TYPES.SMART_ACCOUNT}});return}},hasInsufficientToken(n,t){return I.isInsufficientSourceTokenForSwap(n,t,e.myTokensWithBalance)},setTransactionDetails(){const{toTokenAddress:n,toTokenDecimals:t}=a.getParams();!n||!t||(e.gasPriceInUSD=I.getGasPriceInUSD(e.networkPrice,BigInt(e.gasFee),BigInt(W)),e.priceImpact=I.getPriceImpact({sourceTokenAmount:e.sourceTokenAmount,sourceTokenPriceInUSD:e.sourceTokenPriceInUSD,toTokenPriceInUSD:e.toTokenPriceInUSD,toTokenAmount:e.toTokenAmount}),e.maxSlippage=I.getMaxSlippage(e.slippage,e.toTokenAmount),e.providerFee=I.getProviderFee(e.sourceTokenAmount))}},a=O(E);export{a as S};
|
|
1
|
+
import{N as T,w as O,p as x,R as A,S as g,o as B,E as D,q as M,W as F,C as w,B as v,a as L,t as N,u as z,x as R,d as _,e as H,y as V,s as q,i as $}from"./index-B0fQnkQ5.js";import{C as P}from"./NetworkUtil-sGYAtXqw.js";const I={getGasPriceInEther(n,t){const o=t*n;return Number(o)/1e18},getGasPriceInUSD(n,t,o){const s=I.getGasPriceInEther(t,o);return T.bigNumber(n).times(s).toNumber()},getPriceImpact({sourceTokenAmount:n,sourceTokenPriceInUSD:t,toTokenPriceInUSD:o,toTokenAmount:s}){const c=T.bigNumber(n).times(t),r=T.bigNumber(s).times(o);return c.minus(r).div(c).times(100).toNumber()},getMaxSlippage(n,t){const o=T.bigNumber(n).div(100);return T.multiply(t,o).toNumber()},getProviderFee(n,t=.0085){return T.bigNumber(n).times(t).toString()},isInsufficientNetworkTokenForGas(n,t){const o=t||"0";return T.bigNumber(n).eq(0)?!0:T.bigNumber(T.bigNumber(o)).gt(n)},isInsufficientSourceTokenForSwap(n,t,o){var r,d;const s=(d=(r=o==null?void 0:o.find(l=>l.address===t))==null?void 0:r.quantity)==null?void 0:d.numeric;return T.bigNumber(s||"0").lt(n)}},G=15e4,Q=6,k={initializing:!1,initialized:!1,loadingPrices:!1,loadingQuote:!1,loadingApprovalTransaction:!1,loadingBuildTransaction:!1,loadingTransaction:!1,switchingTokens:!1,fetchError:!1,approvalTransaction:void 0,swapTransaction:void 0,transactionError:void 0,sourceToken:void 0,sourceTokenAmount:"",sourceTokenPriceInUSD:0,toToken:void 0,toTokenAmount:"",toTokenPriceInUSD:0,networkPrice:"0",networkBalanceInUSD:"0",networkTokenSymbol:"",inputError:void 0,slippage:_.CONVERT_SLIPPAGE_TOLERANCE,tokens:void 0,popularTokens:void 0,suggestedTokens:void 0,foundTokens:void 0,myTokensWithBalance:void 0,tokensPriceMap:{},gasFee:"0",gasPriceInUSD:0,priceImpact:void 0,maxSlippage:void 0,providerFee:void 0},e=x({...k}),E={state:e,subscribe(n){return $(e,()=>n(e))},subscribeKey(n,t){return q(e,n,t)},getParams(){var i,u,p,f,S,h,y,C,b;const n=w.state.activeChain,t=((i=w.getAccountData(n))==null?void 0:i.caipAddress)??w.state.activeCaipAddress,o=L.getPlainAddress(t),s=H(),c=V.getConnectorId(w.state.activeChain);if(!o)throw new Error("No address found to swap the tokens from.");const r=!((u=e.toToken)!=null&&u.address)||!((p=e.toToken)!=null&&p.decimals),d=!((f=e.sourceToken)!=null&&f.address)||!((S=e.sourceToken)!=null&&S.decimals)||!T.bigNumber(e.sourceTokenAmount).gt(0),l=!e.sourceTokenAmount;return{networkAddress:s,fromAddress:o,fromCaipAddress:t,sourceTokenAddress:(h=e.sourceToken)==null?void 0:h.address,toTokenAddress:(y=e.toToken)==null?void 0:y.address,toTokenAmount:e.toTokenAmount,toTokenDecimals:(C=e.toToken)==null?void 0:C.decimals,sourceTokenAmount:e.sourceTokenAmount,sourceTokenDecimals:(b=e.sourceToken)==null?void 0:b.decimals,invalidToToken:r,invalidSourceToken:d,invalidSourceTokenAmount:l,availableToSwap:t&&!r&&!d&&!l,isAuthConnector:c===P.CONNECTOR_ID.AUTH}},async setSourceToken(n){if(!n){e.sourceToken=n,e.sourceTokenAmount="",e.sourceTokenPriceInUSD=0;return}e.sourceToken=n,await a.setTokenPrice(n.address,"sourceToken")},setSourceTokenAmount(n){e.sourceTokenAmount=n},async setToToken(n){if(!n){e.toToken=n,e.toTokenAmount="",e.toTokenPriceInUSD=0;return}e.toToken=n,await a.setTokenPrice(n.address,"toToken")},setToTokenAmount(n){e.toTokenAmount=n?T.toFixed(n,Q):""},async setTokenPrice(n,t){let o=e.tokensPriceMap[n]||0;o||(e.loadingPrices=!0,o=await a.getAddressPrice(n)),t==="sourceToken"?e.sourceTokenPriceInUSD=o:t==="toToken"&&(e.toTokenPriceInUSD=o),e.loadingPrices&&(e.loadingPrices=!1),a.getParams().availableToSwap&&!e.switchingTokens&&a.swapTokens()},async switchTokens(){if(!(e.initializing||!e.initialized||e.switchingTokens)){e.switchingTokens=!0;try{const n=e.toToken?{...e.toToken}:void 0,t=e.sourceToken?{...e.sourceToken}:void 0,o=n&&e.toTokenAmount===""?"1":e.toTokenAmount;a.setSourceTokenAmount(o),a.setToTokenAmount(""),await a.setSourceToken(n),await a.setToToken(t),e.switchingTokens=!1,a.swapTokens()}catch(n){throw e.switchingTokens=!1,n}}},resetState(){e.myTokensWithBalance=k.myTokensWithBalance,e.tokensPriceMap=k.tokensPriceMap,e.initialized=k.initialized,e.initializing=k.initializing,e.switchingTokens=k.switchingTokens,e.sourceToken=k.sourceToken,e.sourceTokenAmount=k.sourceTokenAmount,e.sourceTokenPriceInUSD=k.sourceTokenPriceInUSD,e.toToken=k.toToken,e.toTokenAmount=k.toTokenAmount,e.toTokenPriceInUSD=k.toTokenPriceInUSD,e.networkPrice=k.networkPrice,e.networkTokenSymbol=k.networkTokenSymbol,e.networkBalanceInUSD=k.networkBalanceInUSD,e.inputError=k.inputError},resetValues(){var o;const{networkAddress:n}=a.getParams(),t=(o=e.tokens)==null?void 0:o.find(s=>s.address===n);a.setSourceToken(t),a.setToToken(void 0)},getApprovalLoadingState(){return e.loadingApprovalTransaction},clearError(){e.transactionError=void 0},async initializeState(){if(!e.initializing){if(e.initializing=!0,!e.initialized)try{await a.fetchTokens(),e.initialized=!0}catch{e.initialized=!1,g.showError("Failed to initialize swap"),A.goBack()}e.initializing=!1}},async fetchTokens(){var o;const{networkAddress:n}=a.getParams();await a.getNetworkTokenPrice(),await a.getMyTokensWithBalance();const t=(o=e.myTokensWithBalance)==null?void 0:o.find(s=>s.address===n);t&&(e.networkTokenSymbol=t.symbol,a.setSourceToken(t),a.setSourceTokenAmount("0"))},async getTokenList(){var t,o;const n=(t=w.state.activeCaipNetwork)==null?void 0:t.caipNetworkId;if(!(e.caipNetworkId===n&&e.tokens))try{e.tokensLoading=!0;const s=await N.getTokenList(n);e.tokens=s,e.caipNetworkId=n,e.popularTokens=s.sort((i,u)=>i.symbol<u.symbol?-1:i.symbol>u.symbol?1:0);const r=(n&&((o=_.SUGGESTED_TOKENS_BY_CHAIN)==null?void 0:o[n])||[]).map(i=>s.find(u=>u.symbol===i)).filter(i=>!!i),l=(_.SWAP_SUGGESTED_TOKENS||[]).map(i=>s.find(u=>u.symbol===i)).filter(i=>!!i).filter(i=>!r.some(u=>u.address===i.address));e.suggestedTokens=[...r,...l]}catch{e.tokens=[],e.popularTokens=[],e.suggestedTokens=[]}finally{e.tokensLoading=!1}},async getAddressPrice(n){var i,u;const t=e.tokensPriceMap[n];if(t)return t;const o=await v.fetchTokenPrice({addresses:[n]}),s=(o==null?void 0:o.fungibles)||[],c=[...e.tokens||[],...e.myTokensWithBalance||[]],r=(i=c==null?void 0:c.find(p=>p.address===n))==null?void 0:i.symbol,d=((u=s.find(p=>p.symbol.toLowerCase()===(r==null?void 0:r.toLowerCase())))==null?void 0:u.price)||0,l=parseFloat(d.toString());return e.tokensPriceMap[n]=l,l},async getNetworkTokenPrice(){var c;const{networkAddress:n}=a.getParams(),o=(c=(await v.fetchTokenPrice({addresses:[n]}).catch(()=>(g.showError("Failed to fetch network token price"),{fungibles:[]}))).fungibles)==null?void 0:c[0],s=(o==null?void 0:o.price.toString())||"0";e.tokensPriceMap[n]=parseFloat(s),e.networkTokenSymbol=(o==null?void 0:o.symbol)||"",e.networkPrice=s},async getMyTokensWithBalance(n){const t=await R.getMyTokensWithBalance(n),o=N.mapBalancesToSwapTokens(t);o&&(await a.getInitialGasPrice(),a.setBalances(o))},setBalances(n){const{networkAddress:t}=a.getParams(),o=w.state.activeCaipNetwork;if(!o)return;const s=n.find(c=>c.address===t);n.forEach(c=>{e.tokensPriceMap[c.address]=c.price||0}),e.myTokensWithBalance=n.filter(c=>c.address.startsWith(o.caipNetworkId)),e.networkBalanceInUSD=s?T.multiply(s.quantity.numeric,s.price).toString():"0"},async getInitialGasPrice(){var t,o;const n=await N.fetchGasPrice();if(!n)return{gasPrice:null,gasPriceInUSD:null};switch((o=(t=w.state)==null?void 0:t.activeCaipNetwork)==null?void 0:o.chainNamespace){case P.CHAIN.SOLANA:return e.gasFee=n.standard??"0",e.gasPriceInUSD=T.multiply(n.standard,e.networkPrice).div(1e9).toNumber(),{gasPrice:BigInt(e.gasFee),gasPriceInUSD:Number(e.gasPriceInUSD)};case P.CHAIN.EVM:default:const s=n.standard??"0",c=BigInt(s),r=BigInt(G),d=I.getGasPriceInUSD(e.networkPrice,r,c);return e.gasFee=s,e.gasPriceInUSD=d,{gasPrice:c,gasPriceInUSD:d}}},async swapTokens(){var r,d,l;const n=(r=w.getAccountData())==null?void 0:r.address,t=e.sourceToken,o=e.toToken,s=T.bigNumber(e.sourceTokenAmount).gt(0);if(s||a.setToTokenAmount(""),!o||!t||e.loadingPrices||!s||!n)return;e.loadingQuote=!0;const c=T.bigNumber(e.sourceTokenAmount).times(10**t.decimals).round(0);try{const i=await v.fetchSwapQuote({userAddress:n,from:t.address,to:o.address,gasPrice:e.gasFee,amount:c.toString()});e.loadingQuote=!1;const u=(l=(d=i==null?void 0:i.quotes)==null?void 0:d[0])==null?void 0:l.toAmount;if(!u){z.open({displayMessage:"Incorrect amount",debugMessage:"Please enter a valid amount"},"error");return}const p=T.bigNumber(u).div(10**o.decimals).toString();a.setToTokenAmount(p),a.hasInsufficientToken(e.sourceTokenAmount,t.address)?e.inputError="Insufficient balance":(e.inputError=void 0,a.setTransactionDetails())}catch(i){const u=await N.handleSwapError(i);e.loadingQuote=!1,e.inputError=u||"Insufficient balance"}},async getTransaction(){const{fromCaipAddress:n,availableToSwap:t}=a.getParams(),o=e.sourceToken,s=e.toToken;if(!(!n||!t||!o||!s||e.loadingQuote))try{e.loadingBuildTransaction=!0;const c=await N.fetchSwapAllowance({userAddress:n,tokenAddress:o.address,sourceTokenAmount:e.sourceTokenAmount,sourceTokenDecimals:o.decimals});let r;return c?r=await a.createSwapTransaction():r=await a.createAllowanceTransaction(),e.loadingBuildTransaction=!1,e.fetchError=!1,r}catch{A.goBack(),g.showError("Failed to check allowance"),e.loadingBuildTransaction=!1,e.approvalTransaction=void 0,e.swapTransaction=void 0,e.fetchError=!0;return}},async createAllowanceTransaction(){const{fromCaipAddress:n,sourceTokenAddress:t,toTokenAddress:o}=a.getParams();if(!(!n||!o)){if(!t)throw new Error("createAllowanceTransaction - No source token address found.");try{const s=await v.generateApproveCalldata({from:t,to:o,userAddress:n}),c=L.getPlainAddress(s.tx.from);if(!c)throw new Error("SwapController:createAllowanceTransaction - address is required");const r={data:s.tx.data,to:c,gasPrice:BigInt(s.tx.eip155.gasPrice),value:BigInt(s.tx.value),toAmount:e.toTokenAmount};return e.swapTransaction=void 0,e.approvalTransaction={data:r.data,to:r.to,gasPrice:r.gasPrice,value:r.value,toAmount:r.toAmount},{data:r.data,to:r.to,gasPrice:r.gasPrice,value:r.value,toAmount:r.toAmount}}catch{A.goBack(),g.showError("Failed to create approval transaction"),e.approvalTransaction=void 0,e.swapTransaction=void 0,e.fetchError=!0;return}}},async createSwapTransaction(){var d;const{networkAddress:n,fromCaipAddress:t,sourceTokenAmount:o}=a.getParams(),s=e.sourceToken,c=e.toToken;if(!t||!o||!s||!c)return;const r=(d=B.parseUnits(o,s.decimals))==null?void 0:d.toString();try{const l=await v.generateSwapCalldata({userAddress:t,from:s.address,to:c.address,amount:r,disableEstimate:!0}),i=s.address===n,u=BigInt(l.tx.eip155.gas),p=BigInt(l.tx.eip155.gasPrice),f=L.getPlainAddress(l.tx.to);if(!f)throw new Error("SwapController:createSwapTransaction - address is required");const S={data:l.tx.data,to:f,gas:u,gasPrice:p,value:BigInt(i?r??"0":"0"),toAmount:e.toTokenAmount};return e.gasPriceInUSD=I.getGasPriceInUSD(e.networkPrice,u,p),e.approvalTransaction=void 0,e.swapTransaction=S,S}catch{A.goBack(),g.showError("Failed to create transaction"),e.approvalTransaction=void 0,e.swapTransaction=void 0,e.fetchError=!0;return}},onEmbeddedWalletApprovalSuccess(){g.showLoading("Approve limit increase in your wallet"),A.replace("SwapPreview")},async sendTransactionForApproval(n){var c,r,d;const{fromAddress:t,isAuthConnector:o}=a.getParams();e.loadingApprovalTransaction=!0,o?A.pushTransactionStack({onSuccess:a.onEmbeddedWalletApprovalSuccess}):g.showLoading("Approve limit increase in your wallet");try{await B.sendTransaction({address:t,to:n.to,data:n.data,value:n.value,chainNamespace:P.CHAIN.EVM}),await a.swapTokens(),await a.getTransaction(),e.approvalTransaction=void 0,e.loadingApprovalTransaction=!1}catch(l){const i=l;e.transactionError=i==null?void 0:i.displayMessage,e.loadingApprovalTransaction=!1,g.showError((i==null?void 0:i.displayMessage)||"Transaction error"),D.sendEvent({type:"track",event:"SWAP_APPROVAL_ERROR",properties:{message:(i==null?void 0:i.displayMessage)||(i==null?void 0:i.message)||"Unknown",network:((c=w.state.activeCaipNetwork)==null?void 0:c.caipNetworkId)||"",swapFromToken:((r=a.state.sourceToken)==null?void 0:r.symbol)||"",swapToToken:((d=a.state.toToken)==null?void 0:d.symbol)||"",swapFromAmount:a.state.sourceTokenAmount||"",swapToAmount:a.state.toTokenAmount||"",isSmartAccount:M(P.CHAIN.EVM)===F.ACCOUNT_TYPES.SMART_ACCOUNT}})}},async sendTransactionForSwap(n){var d,l,i,u,p,f,S,h,y,C,b,W;if(!n)return;const{fromAddress:t,toTokenAmount:o,isAuthConnector:s}=a.getParams();e.loadingTransaction=!0;const c=`Swapping ${(d=e.sourceToken)==null?void 0:d.symbol} to ${T.formatNumberToLocalString(o,3)} ${(l=e.toToken)==null?void 0:l.symbol}`,r=`Swapped ${(i=e.sourceToken)==null?void 0:i.symbol} to ${T.formatNumberToLocalString(o,3)} ${(u=e.toToken)==null?void 0:u.symbol}`;s?A.pushTransactionStack({onSuccess(){A.replace("Account"),g.showLoading(c),E.resetState()}}):g.showLoading("Confirm transaction in your wallet");try{const U=[(p=e.sourceToken)==null?void 0:p.address,(f=e.toToken)==null?void 0:f.address].join(","),m=await B.sendTransaction({address:t,to:n.to,data:n.data,value:n.value,chainNamespace:P.CHAIN.EVM});return e.loadingTransaction=!1,g.showSuccess(r),D.sendEvent({type:"track",event:"SWAP_SUCCESS",properties:{network:((S=w.state.activeCaipNetwork)==null?void 0:S.caipNetworkId)||"",swapFromToken:((h=a.state.sourceToken)==null?void 0:h.symbol)||"",swapToToken:((y=a.state.toToken)==null?void 0:y.symbol)||"",swapFromAmount:a.state.sourceTokenAmount||"",swapToAmount:a.state.toTokenAmount||"",isSmartAccount:M(P.CHAIN.EVM)===F.ACCOUNT_TYPES.SMART_ACCOUNT}}),E.resetState(),s||A.replace("Account"),E.getMyTokensWithBalance(U),m}catch(U){const m=U;e.transactionError=m==null?void 0:m.displayMessage,e.loadingTransaction=!1,g.showError((m==null?void 0:m.displayMessage)||"Transaction error"),D.sendEvent({type:"track",event:"SWAP_ERROR",properties:{message:(m==null?void 0:m.displayMessage)||(m==null?void 0:m.message)||"Unknown",network:((C=w.state.activeCaipNetwork)==null?void 0:C.caipNetworkId)||"",swapFromToken:((b=a.state.sourceToken)==null?void 0:b.symbol)||"",swapToToken:((W=a.state.toToken)==null?void 0:W.symbol)||"",swapFromAmount:a.state.sourceTokenAmount||"",swapToAmount:a.state.toTokenAmount||"",isSmartAccount:M(P.CHAIN.EVM)===F.ACCOUNT_TYPES.SMART_ACCOUNT}});return}},hasInsufficientToken(n,t){return I.isInsufficientSourceTokenForSwap(n,t,e.myTokensWithBalance)},setTransactionDetails(){const{toTokenAddress:n,toTokenDecimals:t}=a.getParams();!n||!t||(e.gasPriceInUSD=I.getGasPriceInUSD(e.networkPrice,BigInt(e.gasFee),BigInt(G)),e.priceImpact=I.getPriceImpact({sourceTokenAmount:e.sourceTokenAmount,sourceTokenPriceInUSD:e.sourceTokenPriceInUSD,toTokenPriceInUSD:e.toTokenPriceInUSD,toTokenAmount:e.toTokenAmount}),e.maxSlippage=I.getMaxSlippage(e.slippage,e.toTokenAmount),e.providerFee=I.getProviderFee(e.sourceTokenAmount))}},a=O(E);export{a as S};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as c,j as y,k as u,f,l as m,m as i,n as g,Z as l}from"./thirdweb-
|
|
1
|
+
import{i as c,j as y,k as u,f,l as m,m as i,n as g,Z as l}from"./thirdweb-JZyWELEG.js";const d=0n;async function x({account:a,serializableTransaction:e,transaction:s,gasless:n}){const o=u({address:n.relayerForwarderAddress,chain:s.chain,client:s.client}),r=await f({contract:o,method:"function getNonce(address,uint256) view returns (uint256)",params:[a.address,d]}),h=Math.floor(Date.now()/1e3)+(n.deadlineSeconds??3600),t={batchId:d,batchNonce:r,data:e.data,deadline:h,from:a.address,to:e.to,token:l,tokenGasPrice:0n,txGas:e.gas};if(!t.to)throw new Error("Cannot send a transaction without a `to` address");if(!t.txGas)throw new Error("Cannot send a transaction without a `gas` value");if(!t.data)throw new Error("Cannot send a transaction without a `data` value");const w=m([{type:"address"},{type:"address"},{type:"address"},{type:"uint256"},{type:"uint256"},{type:"uint256"},{type:"uint256"},{type:"bytes32"}],[i(t.from),i(t.to),i(t.token),t.txGas,t.tokenGasPrice,t.batchId,t.batchNonce,g(t.data)]),p=await a.signMessage({message:w});return[t,p]}async function C(a){const[e,s]=await x(a),n=await fetch("https://api.biconomy.io/api/v2/meta-tx/native",{body:c({apiId:a.gasless.apiId,from:e.from,gasLimit:e.txGas,params:[e,s],to:e.to}),headers:{"Content-Type":"application/json;charset=utf-8","x-api-key":a.gasless.apiKey},method:"POST"});if(!n.ok)throw new Error(`Failed to send transaction: ${await n.text()}`);const o=await n.json(),r=o.txHash;if(y(r))return{chain:a.transaction.chain,client:a.transaction.client,transactionHash:r};throw new Error(`Failed to send transaction: ${c(o)}`)}export{x as prepareBiconomyTransaction,C as relayBiconomyTransaction};
|