@dcl/account-site 6.3.0 → 6.3.1-21684392011.commit-24a0dbb
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/{ConstantsUtil-D8fCl46_.js → ConstantsUtil-CM0JoORy.js} +1 -1
- package/assets/{ExchangeController-DRQ2radf.js → ExchangeController-BDZUsRT9.js} +1 -1
- package/assets/{HelpersUtil-DF_7B-XT.js → HelpersUtil-CjQE0S9b.js} +1 -1
- package/assets/{NetworkUtil-C1pHDiA2.js → NetworkUtil-B7F2Jab-.js} +1 -1
- package/assets/{SwapController-DeJ_cEnB.js → SwapController-fAYHu1LB.js} +1 -1
- package/assets/{ccip-C7XgSPe9.js → ccip-CLGtWj91.js} +1 -1
- package/assets/{ccip-M7NINyJq.js → ccip-DNd23S5x.js} +1 -1
- package/assets/{data-capture-CT5fS2He.js → data-capture-CHLvpUV9.js} +1 -1
- package/assets/{email-BNj_QT2N.js → email-A9gtqSdv.js} +1 -1
- package/assets/{embedded-wallet-BZXJrOR3.js → embedded-wallet-ZDag0Xe1.js} +1 -1
- package/assets/{features-DbdRQbkb.js → features-Bk1VL8VI.js} +1 -1
- package/assets/{fortmatic-Bfeo988X.js → fortmatic-CU7f1C8O.js} +1 -1
- package/assets/{if-defined-CmDEyf7_.js → if-defined-CU5rjy4y.js} +1 -1
- package/assets/{index-Dk5ADCAT.js → index-AChAn5uS.js} +1 -1
- package/assets/{index-B07fJW_M.js → index-B-tlGQu6.js} +1 -1
- package/assets/{index-CLLZ1ipK.js → index-B15SRAmV.js} +1 -1
- package/assets/{index-DT2L_2ss.js → index-BIF8Dlvu.js} +1 -1
- package/assets/{index-BUIexZYW.js → index-BJ4UmNcx.js} +1 -1
- package/assets/{index-CM0VA1ux.js → index-BKTrJtK7.js} +1 -1
- package/assets/{index-Dmy6Zfrl.js → index-BUVFHLlr.js} +1 -1
- package/assets/{index-DSlUMu2W.js → index-BdBq6Igs.js} +1 -1
- package/assets/{index-CYilzGHg.js → index-BeofziA8.js} +1 -1
- package/assets/{index-Dw80EfE1.js → index-BhP3XbO4.js} +1 -1
- package/assets/{index-wfmWujYn.js → index-BkQvMrzE.js} +1 -1
- package/assets/{index-ChtzFhd8.js → index-BlzPmmvu.js} +1 -1
- package/assets/{index-WAgTn_p9.js → index-BocFeNiS.js} +1 -1
- package/assets/{index-Cks8Gva6.js → index-BpwH7C1A.js} +1 -1
- package/assets/{index-CR14xSZ1.js → index-CJwhDFs1.js} +1 -1
- package/assets/{index-CaCb5mI3.js → index-CTvRFCFv.js} +1 -1
- package/assets/{index-Cju0w4jG.js → index-CWD6uQYZ.js} +1 -1
- package/assets/{index--LkjqZ20.js → index-CfNMkRWR.js} +4 -4
- package/assets/{index-Ch0zegEi.js → index-CqqdXuN4.js} +1 -1
- package/assets/{index-BR4OFDim.js → index-CyVsfiK0.js} +1 -1
- package/assets/{index-Dex0-OU2.js → index-CzPBWTgH.js} +1 -1
- package/assets/{index-CgtsyC9I.js → index-DCUIXxx4.js} +1 -1
- package/assets/{index-CUhYMdk_.js → index-DFnpQY_f.js} +1 -1
- package/assets/index-DPJ73qp9.js +7 -0
- package/assets/{index-Dwcws8LC.js → index-DUSIVMYc.js} +1 -1
- package/assets/{index-CQ1cI-Zj.js → index-DVhkZrcL.js} +1 -1
- package/assets/{index-DyLZVEsN.js → index-DWL4mpG7.js} +1 -1
- package/assets/{index-DSPHxh5i.js → index-DeTa4egT.js} +1 -1
- package/assets/{index-DdQ0eE-G.js → index-Dnl66e78.js} +1 -1
- package/assets/{index-BrbSHYTX.js → index-JvpOadvV.js} +1 -1
- package/assets/{index-DcYDqrut.js → index-OJpijto3.js} +1 -1
- package/assets/{index-CsESCjxY.js → index-SEsKmThl.js} +1 -1
- package/assets/{index-BbseWAFJ.js → index-YXhPM253.js} +1 -1
- package/assets/{index-C7oGPpaL.js → index-g1eNt2DN.js} +16 -16
- package/assets/{index-BD7xvZvh.js → index-kAhp1ihs.js} +1 -1
- package/assets/{index-DfxzfZnN.js → index-oLft3y8M.js} +1 -1
- package/assets/{index-CsGx_C2i.css → index-ynbLn7L1.css} +3 -3
- package/assets/{index.web-BmX8cxMq.js → index.web-DtcGpmF5.js} +1 -1
- package/assets/{networks-D6RQiiGp.js → networks-CCE_PcUj.js} +1 -1
- package/assets/{onramp-HEbuIx5u.js → onramp-DLtAhTI1.js} +1 -1
- package/assets/{pay-with-exchange-D4wYtYZK.js → pay-with-exchange-DTwrcFgj.js} +1 -1
- package/assets/{receive-ChY0CPZY.js → receive-BxjN-oOv.js} +1 -1
- package/assets/{ref-D3SKCpzg.js → ref-Ci8-4xdm.js} +1 -1
- package/assets/{secp256k1-4xJu1xA7.js → secp256k1-DvlHmgU2.js} +1 -1
- package/assets/{send-Bl3nu8cH.js → send-DS95zySY.js} +1 -1
- package/assets/{socials-AtPv4rYZ.js → socials-CoaWTkpp.js} +1 -1
- package/assets/{swaps-CHm7AABh.js → swaps-BoF4Cvv2.js} +1 -1
- package/assets/{transactions-YcwaqPFH.js → transactions-CSR7vUH-.js} +1 -1
- package/assets/{verifyHash-DeY2ZqQJ.js → verifyHash-CpYy7CEV.js} +3 -3
- package/assets/{w3m-modal-DJIfB5Aq.js → w3m-modal-DvhpxcoR.js} +1 -1
- package/index.html +2 -2
- package/package.json +3 -3
- package/assets/index-CfncZko9.js +0 -7
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{O as $,U as b,a as C,C as p,V as B,o as w,X as j,p as q,E as _,S as T,R as L,M as x,s as z,i as X,n as W,l as F,m,T as J,y as M,z as Z}from"./index--LkjqZ20.js";import{r as h,c as H}from"./index-CYilzGHg.js";import{o as Y}from"./if-defined-CmDEyf7_.js";import"./index-DSPHxh5i.js";import"./index-Cju0w4jG.js";import"./index-CaCb5mI3.js";import"./index-BrbSHYTX.js";import"./index-ChtzFhd8.js";import"./index-DT2L_2ss.js";import"./index-Dw80EfE1.js";import"./index-Dmy6Zfrl.js";import"./index-Dwcws8LC.js";import{C as g}from"./NetworkUtil-C1pHDiA2.js";import"./index-Cks8Gva6.js";import"./index-C7oGPpaL.js";import"./index-Dex0-OU2.js";const o={INVALID_PAYMENT_CONFIG:"INVALID_PAYMENT_CONFIG",INVALID_RECIPIENT:"INVALID_RECIPIENT",INVALID_ASSET:"INVALID_ASSET",INVALID_AMOUNT:"INVALID_AMOUNT",UNKNOWN_ERROR:"UNKNOWN_ERROR",UNABLE_TO_INITIATE_PAYMENT:"UNABLE_TO_INITIATE_PAYMENT",INVALID_CHAIN_NAMESPACE:"INVALID_CHAIN_NAMESPACE",GENERIC_PAYMENT_ERROR:"GENERIC_PAYMENT_ERROR",UNABLE_TO_GET_EXCHANGES:"UNABLE_TO_GET_EXCHANGES",ASSET_NOT_SUPPORTED:"ASSET_NOT_SUPPORTED",UNABLE_TO_GET_PAY_URL:"UNABLE_TO_GET_PAY_URL",UNABLE_TO_GET_BUY_STATUS:"UNABLE_TO_GET_BUY_STATUS"},N={[o.INVALID_PAYMENT_CONFIG]:"Invalid payment configuration",[o.INVALID_RECIPIENT]:"Invalid recipient address",[o.INVALID_ASSET]:"Invalid asset specified",[o.INVALID_AMOUNT]:"Invalid payment amount",[o.UNKNOWN_ERROR]:"Unknown payment error occurred",[o.UNABLE_TO_INITIATE_PAYMENT]:"Unable to initiate payment",[o.INVALID_CHAIN_NAMESPACE]:"Invalid chain namespace",[o.GENERIC_PAYMENT_ERROR]:"Unable to process payment",[o.UNABLE_TO_GET_EXCHANGES]:"Unable to get exchanges",[o.ASSET_NOT_SUPPORTED]:"Asset not supported by the selected exchange",[o.UNABLE_TO_GET_PAY_URL]:"Unable to get payment URL",[o.UNABLE_TO_GET_BUY_STATUS]:"Unable to get buy status"};class c extends Error{get message(){return N[this.code]}constructor(e,s){super(N[e]),this.name="AppKitPayError",this.code=e,this.details=s,Error.captureStackTrace&&Error.captureStackTrace(this,c)}}const Q="https://rpc.walletconnect.org/v1/json-rpc";class ee extends Error{}function te(){const t=$.getSnapshot().projectId;return`${Q}?projectId=${t}`}async function O(t,e){const s=te(),{sdkType:a,sdkVersion:r,projectId:i}=$.getSnapshot(),u={jsonrpc:"2.0",id:1,method:t,params:{...e||{},st:a,sv:r,projectId:i}},A=await(await fetch(s,{method:"POST",body:JSON.stringify(u),headers:{"Content-Type":"application/json"}})).json();if(A.error)throw new ee(A.error.message);return A}async function G(t){return(await O("reown_getExchanges",t)).result}async function ne(t){return(await O("reown_getExchangePayUrl",t)).result}async function se(t){return(await O("reown_getExchangeBuyStatus",t)).result}const ae=["eip155","solana"],re={eip155:{native:{assetNamespace:"slip44",assetReference:"60"},defaultTokenNamespace:"erc20"},solana:{native:{assetNamespace:"slip44",assetReference:"501"},defaultTokenNamespace:"token"}};function R(t,e){const{chainNamespace:s,chainId:a}=b.parseCaipNetworkId(t),r=re[s];if(!r)throw new Error(`Unsupported chain namespace for CAIP-19 formatting: ${s}`);let i=r.native.assetNamespace,u=r.native.assetReference;return e!=="native"&&(i=r.defaultTokenNamespace,u=e),`${`${s}:${a}`}/${i}:${u}`}function ie(t){const{chainNamespace:e}=b.parseCaipNetworkId(t);return ae.includes(e)}async function oe(t){const{paymentAssetNetwork:e,activeCaipNetwork:s,approvedCaipNetworkIds:a,requestedCaipNetworks:r}=t,u=C.sortRequestedNetworks(a,r).find(P=>P.caipNetworkId===e);if(!u)throw new c(o.INVALID_PAYMENT_CONFIG);if(u.caipNetworkId===s.caipNetworkId)return;const d=p.getNetworkProp("supportsAllNetworks",u.chainNamespace);if(!((a==null?void 0:a.includes(u.caipNetworkId))||d))throw new c(o.INVALID_PAYMENT_CONFIG);try{await p.switchActiveNetwork(u)}catch(P){throw new c(o.GENERIC_PAYMENT_ERROR,P)}}async function ce(t,e,s){var d;if(e!==g.CHAIN.EVM)throw new c(o.INVALID_CHAIN_NAMESPACE);if(!s.fromAddress)throw new c(o.INVALID_PAYMENT_CONFIG,"fromAddress is required for native EVM payments.");const a=typeof s.amount=="string"?parseFloat(s.amount):s.amount;if(isNaN(a))throw new c(o.INVALID_PAYMENT_CONFIG);const r=((d=t.metadata)==null?void 0:d.decimals)??18,i=w.parseUnits(a.toString(),r);if(typeof i!="bigint")throw new c(o.GENERIC_PAYMENT_ERROR);return await w.sendTransaction({chainNamespace:e,to:s.recipient,address:s.fromAddress,value:i,data:"0x"})??void 0}async function ue(t,e){if(!e.fromAddress)throw new c(o.INVALID_PAYMENT_CONFIG,"fromAddress is required for ERC20 EVM payments.");const s=t.asset,a=e.recipient,r=Number(t.metadata.decimals),i=w.parseUnits(e.amount.toString(),r);if(i===void 0)throw new c(o.GENERIC_PAYMENT_ERROR);return await w.writeContract({fromAddress:e.fromAddress,tokenAddress:s,args:[a,i],method:"transfer",abi:j.getERC20Abi(s),chainNamespace:g.CHAIN.EVM})??void 0}async function le(t,e){if(t!==g.CHAIN.SOLANA)throw new c(o.INVALID_CHAIN_NAMESPACE);if(!e.fromAddress)throw new c(o.INVALID_PAYMENT_CONFIG,"fromAddress is required for Solana payments.");const s=typeof e.amount=="string"?parseFloat(e.amount):e.amount;if(isNaN(s)||s<=0)throw new c(o.INVALID_PAYMENT_CONFIG,"Invalid payment amount.");try{if(!B.getProvider(t))throw new c(o.GENERIC_PAYMENT_ERROR,"No Solana provider available.");const r=await w.sendTransaction({chainNamespace:g.CHAIN.SOLANA,to:e.recipient,value:s,tokenMint:e.tokenMint});if(!r)throw new c(o.GENERIC_PAYMENT_ERROR,"Transaction failed.");return r}catch(a){throw a instanceof c?a:new c(o.GENERIC_PAYMENT_ERROR,`Solana payment failed: ${a}`)}}const V=0,v="unknown",n=q({paymentAsset:{network:"eip155:1",asset:"0x0",metadata:{name:"0x0",symbol:"0x0",decimals:0}},recipient:"0x0",amount:0,isConfigured:!1,error:null,isPaymentInProgress:!1,exchanges:[],isLoading:!1,openInNewTab:!0,redirectUrl:void 0,payWithExchange:void 0,currentPayment:void 0,analyticsSet:!1,paymentId:void 0}),l={state:n,subscribe(t){return X(n,()=>t(n))},subscribeKey(t,e){return z(n,t,e)},async handleOpenPay(t){this.resetState(),this.setPaymentConfig(t),this.subscribeEvents(),this.initializeAnalytics(),n.isConfigured=!0,_.sendEvent({type:"track",event:"PAY_MODAL_OPEN",properties:{exchanges:n.exchanges,configuration:{network:n.paymentAsset.network,asset:n.paymentAsset.asset,recipient:n.recipient,amount:n.amount}}}),await x.open({view:"Pay"})},resetState(){n.paymentAsset={network:"eip155:1",asset:"0x0",metadata:{name:"0x0",symbol:"0x0",decimals:0}},n.recipient="0x0",n.amount=0,n.isConfigured=!1,n.error=null,n.isPaymentInProgress=!1,n.isLoading=!1,n.currentPayment=void 0},setPaymentConfig(t){if(!t.paymentAsset)throw new c(o.INVALID_PAYMENT_CONFIG);try{n.paymentAsset=t.paymentAsset,n.recipient=t.recipient,n.amount=t.amount,n.openInNewTab=t.openInNewTab??!0,n.redirectUrl=t.redirectUrl,n.payWithExchange=t.payWithExchange,n.error=null}catch(e){throw new c(o.INVALID_PAYMENT_CONFIG,e.message)}},getPaymentAsset(){return n.paymentAsset},getExchanges(){return n.exchanges},async fetchExchanges(){try{n.isLoading=!0;const t=await G({page:V,asset:R(n.paymentAsset.network,n.paymentAsset.asset),amount:n.amount.toString()});n.exchanges=t.exchanges.slice(0,2)}catch{throw T.showError(N.UNABLE_TO_GET_EXCHANGES),new c(o.UNABLE_TO_GET_EXCHANGES)}finally{n.isLoading=!1}},async getAvailableExchanges(t){var e;try{const s=t!=null&&t.asset&&(t!=null&&t.network)?R(t.network,t.asset):void 0;return await G({page:(t==null?void 0:t.page)??V,asset:s,amount:(e=t==null?void 0:t.amount)==null?void 0:e.toString()})}catch{throw new c(o.UNABLE_TO_GET_EXCHANGES)}},async getPayUrl(t,e,s=!1){try{const a=Number(e.amount),r=await ne({exchangeId:t,asset:R(e.network,e.asset),amount:a.toString(),recipient:`${e.network}:${e.recipient}`});return _.sendEvent({type:"track",event:"PAY_EXCHANGE_SELECTED",properties:{source:"pay",exchange:{id:t},configuration:{network:e.network,asset:e.asset,recipient:e.recipient,amount:a},currentPayment:{type:"exchange",exchangeId:t},headless:s}}),s&&(this.initiatePayment(),_.sendEvent({type:"track",event:"PAY_INITIATED",properties:{source:"pay",paymentId:n.paymentId||v,configuration:{network:e.network,asset:e.asset,recipient:e.recipient,amount:a},currentPayment:{type:"exchange",exchangeId:t}}})),r}catch(a){throw a instanceof Error&&a.message.includes("is not supported")?new c(o.ASSET_NOT_SUPPORTED):new Error(a.message)}},async openPayUrl(t,e,s=!1){try{const a=await this.getPayUrl(t.exchangeId,e,s);if(!a)throw new c(o.UNABLE_TO_GET_PAY_URL);const i=t.openInNewTab??!0?"_blank":"_self";return C.openHref(a.url,i),a}catch(a){throw a instanceof c?n.error=a.message:n.error=N.GENERIC_PAYMENT_ERROR,new c(o.UNABLE_TO_GET_PAY_URL)}},subscribeEvents(){n.isConfigured||(w.subscribeKey("connections",t=>{t.size>0&&this.handlePayment()}),p.subscribeChainProp("accountState",t=>{const e=w.hasAnyConnection(g.CONNECTOR_ID.WALLET_CONNECT);t!=null&&t.caipAddress&&(e?setTimeout(()=>{this.handlePayment()},100):this.handlePayment())}))},async handlePayment(){n.currentPayment={type:"wallet",status:"IN_PROGRESS"};const t=p.getActiveCaipAddress();if(!t)return;const{chainId:e,address:s}=b.parseCaipAddress(t),a=p.state.activeChain;if(!s||!e||!a||!B.getProvider(a))return;const i=p.state.activeCaipNetwork;if(i&&!n.isPaymentInProgress)try{this.initiatePayment();const u=p.getAllRequestedCaipNetworks(),d=p.getAllApprovedCaipNetworkIds();switch(await oe({paymentAssetNetwork:n.paymentAsset.network,activeCaipNetwork:i,approvedCaipNetworkIds:d,requestedCaipNetworks:u}),await x.open({view:"PayLoading"}),a){case g.CHAIN.EVM:n.paymentAsset.asset==="native"&&(n.currentPayment.result=await ce(n.paymentAsset,a,{recipient:n.recipient,amount:n.amount,fromAddress:s})),n.paymentAsset.asset.startsWith("0x")&&(n.currentPayment.result=await ue(n.paymentAsset,{recipient:n.recipient,amount:n.amount,fromAddress:s})),n.currentPayment.status="SUCCESS";break;case g.CHAIN.SOLANA:n.currentPayment.result=await le(a,{recipient:n.recipient,amount:n.amount,fromAddress:s,tokenMint:n.paymentAsset.asset==="native"?void 0:n.paymentAsset.asset}),n.currentPayment.status="SUCCESS";break;default:throw new c(o.INVALID_CHAIN_NAMESPACE)}}catch(u){u instanceof c?n.error=u.message:n.error=N.GENERIC_PAYMENT_ERROR,n.currentPayment.status="FAILED",T.showError(n.error)}finally{n.isPaymentInProgress=!1}},getExchangeById(t){return n.exchanges.find(e=>e.id===t)},validatePayConfig(t){const{paymentAsset:e,recipient:s,amount:a}=t;if(!e)throw new c(o.INVALID_PAYMENT_CONFIG);if(!s)throw new c(o.INVALID_RECIPIENT);if(!e.asset)throw new c(o.INVALID_ASSET);if(a==null||a<=0)throw new c(o.INVALID_AMOUNT)},handlePayWithWallet(){const t=p.getActiveCaipAddress();if(!t){L.push("Connect");return}const{chainId:e,address:s}=b.parseCaipAddress(t),a=p.state.activeChain;if(!s||!e||!a){L.push("Connect");return}this.handlePayment()},async handlePayWithExchange(t){try{n.currentPayment={type:"exchange",exchangeId:t};const{network:e,asset:s}=n.paymentAsset,a={network:e,asset:s,amount:n.amount,recipient:n.recipient},r=await this.getPayUrl(t,a);if(!r)throw new c(o.UNABLE_TO_INITIATE_PAYMENT);return n.currentPayment.sessionId=r.sessionId,n.currentPayment.status="IN_PROGRESS",n.currentPayment.exchangeId=t,this.initiatePayment(),{url:r.url,openInNewTab:n.openInNewTab}}catch(e){return e instanceof c?n.error=e.message:n.error=N.GENERIC_PAYMENT_ERROR,n.isPaymentInProgress=!1,T.showError(n.error),null}},async getBuyStatus(t,e){var s,a;try{const r=await se({sessionId:e,exchangeId:t});return(r.status==="SUCCESS"||r.status==="FAILED")&&_.sendEvent({type:"track",event:r.status==="SUCCESS"?"PAY_SUCCESS":"PAY_ERROR",properties:{message:r.status==="FAILED"?C.parseError(n.error):void 0,source:"pay",paymentId:n.paymentId||v,configuration:{network:n.paymentAsset.network,asset:n.paymentAsset.asset,recipient:n.recipient,amount:n.amount},currentPayment:{type:"exchange",exchangeId:(s=n.currentPayment)==null?void 0:s.exchangeId,sessionId:(a=n.currentPayment)==null?void 0:a.sessionId,result:r.txHash}}}),r}catch{throw new c(o.UNABLE_TO_GET_BUY_STATUS)}},async updateBuyStatus(t,e){try{const s=await this.getBuyStatus(t,e);n.currentPayment&&(n.currentPayment.status=s.status,n.currentPayment.result=s.txHash),(s.status==="SUCCESS"||s.status==="FAILED")&&(n.isPaymentInProgress=!1)}catch{throw new c(o.UNABLE_TO_GET_BUY_STATUS)}},initiatePayment(){n.isPaymentInProgress=!0,n.paymentId=crypto.randomUUID()},initializeAnalytics(){n.analyticsSet||(n.analyticsSet=!0,this.subscribeKey("isPaymentInProgress",t=>{var e;if((e=n.currentPayment)!=null&&e.status&&n.currentPayment.status!=="UNKNOWN"){const s={IN_PROGRESS:"PAY_INITIATED",SUCCESS:"PAY_SUCCESS",FAILED:"PAY_ERROR"}[n.currentPayment.status];_.sendEvent({type:"track",event:s,properties:{message:n.currentPayment.status==="FAILED"?C.parseError(n.error):void 0,source:"pay",paymentId:n.paymentId||v,configuration:{network:n.paymentAsset.network,asset:n.paymentAsset.asset,recipient:n.recipient,amount:n.amount},currentPayment:{type:n.currentPayment.type,exchangeId:n.currentPayment.exchangeId,sessionId:n.currentPayment.sessionId,result:n.currentPayment.result}}})}}))}},de=W`
|
|
1
|
+
import{O as $,U as b,a as C,C as p,V as B,o as w,X as j,p as q,E as _,S as T,R as L,M as x,s as z,i as X,n as W,l as F,m,T as J,y as M,z as Z}from"./index-CfNMkRWR.js";import{r as h,c as H}from"./index-BeofziA8.js";import{o as Y}from"./if-defined-CU5rjy4y.js";import"./index-DeTa4egT.js";import"./index-CWD6uQYZ.js";import"./index-CTvRFCFv.js";import"./index-JvpOadvV.js";import"./index-BlzPmmvu.js";import"./index-BIF8Dlvu.js";import"./index-BhP3XbO4.js";import"./index-BUVFHLlr.js";import"./index-DUSIVMYc.js";import{C as g}from"./NetworkUtil-B7F2Jab-.js";import"./index-BpwH7C1A.js";import"./index-g1eNt2DN.js";import"./index-CzPBWTgH.js";const o={INVALID_PAYMENT_CONFIG:"INVALID_PAYMENT_CONFIG",INVALID_RECIPIENT:"INVALID_RECIPIENT",INVALID_ASSET:"INVALID_ASSET",INVALID_AMOUNT:"INVALID_AMOUNT",UNKNOWN_ERROR:"UNKNOWN_ERROR",UNABLE_TO_INITIATE_PAYMENT:"UNABLE_TO_INITIATE_PAYMENT",INVALID_CHAIN_NAMESPACE:"INVALID_CHAIN_NAMESPACE",GENERIC_PAYMENT_ERROR:"GENERIC_PAYMENT_ERROR",UNABLE_TO_GET_EXCHANGES:"UNABLE_TO_GET_EXCHANGES",ASSET_NOT_SUPPORTED:"ASSET_NOT_SUPPORTED",UNABLE_TO_GET_PAY_URL:"UNABLE_TO_GET_PAY_URL",UNABLE_TO_GET_BUY_STATUS:"UNABLE_TO_GET_BUY_STATUS"},N={[o.INVALID_PAYMENT_CONFIG]:"Invalid payment configuration",[o.INVALID_RECIPIENT]:"Invalid recipient address",[o.INVALID_ASSET]:"Invalid asset specified",[o.INVALID_AMOUNT]:"Invalid payment amount",[o.UNKNOWN_ERROR]:"Unknown payment error occurred",[o.UNABLE_TO_INITIATE_PAYMENT]:"Unable to initiate payment",[o.INVALID_CHAIN_NAMESPACE]:"Invalid chain namespace",[o.GENERIC_PAYMENT_ERROR]:"Unable to process payment",[o.UNABLE_TO_GET_EXCHANGES]:"Unable to get exchanges",[o.ASSET_NOT_SUPPORTED]:"Asset not supported by the selected exchange",[o.UNABLE_TO_GET_PAY_URL]:"Unable to get payment URL",[o.UNABLE_TO_GET_BUY_STATUS]:"Unable to get buy status"};class c extends Error{get message(){return N[this.code]}constructor(e,s){super(N[e]),this.name="AppKitPayError",this.code=e,this.details=s,Error.captureStackTrace&&Error.captureStackTrace(this,c)}}const Q="https://rpc.walletconnect.org/v1/json-rpc";class ee extends Error{}function te(){const t=$.getSnapshot().projectId;return`${Q}?projectId=${t}`}async function O(t,e){const s=te(),{sdkType:a,sdkVersion:r,projectId:i}=$.getSnapshot(),u={jsonrpc:"2.0",id:1,method:t,params:{...e||{},st:a,sv:r,projectId:i}},A=await(await fetch(s,{method:"POST",body:JSON.stringify(u),headers:{"Content-Type":"application/json"}})).json();if(A.error)throw new ee(A.error.message);return A}async function G(t){return(await O("reown_getExchanges",t)).result}async function ne(t){return(await O("reown_getExchangePayUrl",t)).result}async function se(t){return(await O("reown_getExchangeBuyStatus",t)).result}const ae=["eip155","solana"],re={eip155:{native:{assetNamespace:"slip44",assetReference:"60"},defaultTokenNamespace:"erc20"},solana:{native:{assetNamespace:"slip44",assetReference:"501"},defaultTokenNamespace:"token"}};function R(t,e){const{chainNamespace:s,chainId:a}=b.parseCaipNetworkId(t),r=re[s];if(!r)throw new Error(`Unsupported chain namespace for CAIP-19 formatting: ${s}`);let i=r.native.assetNamespace,u=r.native.assetReference;return e!=="native"&&(i=r.defaultTokenNamespace,u=e),`${`${s}:${a}`}/${i}:${u}`}function ie(t){const{chainNamespace:e}=b.parseCaipNetworkId(t);return ae.includes(e)}async function oe(t){const{paymentAssetNetwork:e,activeCaipNetwork:s,approvedCaipNetworkIds:a,requestedCaipNetworks:r}=t,u=C.sortRequestedNetworks(a,r).find(P=>P.caipNetworkId===e);if(!u)throw new c(o.INVALID_PAYMENT_CONFIG);if(u.caipNetworkId===s.caipNetworkId)return;const d=p.getNetworkProp("supportsAllNetworks",u.chainNamespace);if(!((a==null?void 0:a.includes(u.caipNetworkId))||d))throw new c(o.INVALID_PAYMENT_CONFIG);try{await p.switchActiveNetwork(u)}catch(P){throw new c(o.GENERIC_PAYMENT_ERROR,P)}}async function ce(t,e,s){var d;if(e!==g.CHAIN.EVM)throw new c(o.INVALID_CHAIN_NAMESPACE);if(!s.fromAddress)throw new c(o.INVALID_PAYMENT_CONFIG,"fromAddress is required for native EVM payments.");const a=typeof s.amount=="string"?parseFloat(s.amount):s.amount;if(isNaN(a))throw new c(o.INVALID_PAYMENT_CONFIG);const r=((d=t.metadata)==null?void 0:d.decimals)??18,i=w.parseUnits(a.toString(),r);if(typeof i!="bigint")throw new c(o.GENERIC_PAYMENT_ERROR);return await w.sendTransaction({chainNamespace:e,to:s.recipient,address:s.fromAddress,value:i,data:"0x"})??void 0}async function ue(t,e){if(!e.fromAddress)throw new c(o.INVALID_PAYMENT_CONFIG,"fromAddress is required for ERC20 EVM payments.");const s=t.asset,a=e.recipient,r=Number(t.metadata.decimals),i=w.parseUnits(e.amount.toString(),r);if(i===void 0)throw new c(o.GENERIC_PAYMENT_ERROR);return await w.writeContract({fromAddress:e.fromAddress,tokenAddress:s,args:[a,i],method:"transfer",abi:j.getERC20Abi(s),chainNamespace:g.CHAIN.EVM})??void 0}async function le(t,e){if(t!==g.CHAIN.SOLANA)throw new c(o.INVALID_CHAIN_NAMESPACE);if(!e.fromAddress)throw new c(o.INVALID_PAYMENT_CONFIG,"fromAddress is required for Solana payments.");const s=typeof e.amount=="string"?parseFloat(e.amount):e.amount;if(isNaN(s)||s<=0)throw new c(o.INVALID_PAYMENT_CONFIG,"Invalid payment amount.");try{if(!B.getProvider(t))throw new c(o.GENERIC_PAYMENT_ERROR,"No Solana provider available.");const r=await w.sendTransaction({chainNamespace:g.CHAIN.SOLANA,to:e.recipient,value:s,tokenMint:e.tokenMint});if(!r)throw new c(o.GENERIC_PAYMENT_ERROR,"Transaction failed.");return r}catch(a){throw a instanceof c?a:new c(o.GENERIC_PAYMENT_ERROR,`Solana payment failed: ${a}`)}}const V=0,v="unknown",n=q({paymentAsset:{network:"eip155:1",asset:"0x0",metadata:{name:"0x0",symbol:"0x0",decimals:0}},recipient:"0x0",amount:0,isConfigured:!1,error:null,isPaymentInProgress:!1,exchanges:[],isLoading:!1,openInNewTab:!0,redirectUrl:void 0,payWithExchange:void 0,currentPayment:void 0,analyticsSet:!1,paymentId:void 0}),l={state:n,subscribe(t){return X(n,()=>t(n))},subscribeKey(t,e){return z(n,t,e)},async handleOpenPay(t){this.resetState(),this.setPaymentConfig(t),this.subscribeEvents(),this.initializeAnalytics(),n.isConfigured=!0,_.sendEvent({type:"track",event:"PAY_MODAL_OPEN",properties:{exchanges:n.exchanges,configuration:{network:n.paymentAsset.network,asset:n.paymentAsset.asset,recipient:n.recipient,amount:n.amount}}}),await x.open({view:"Pay"})},resetState(){n.paymentAsset={network:"eip155:1",asset:"0x0",metadata:{name:"0x0",symbol:"0x0",decimals:0}},n.recipient="0x0",n.amount=0,n.isConfigured=!1,n.error=null,n.isPaymentInProgress=!1,n.isLoading=!1,n.currentPayment=void 0},setPaymentConfig(t){if(!t.paymentAsset)throw new c(o.INVALID_PAYMENT_CONFIG);try{n.paymentAsset=t.paymentAsset,n.recipient=t.recipient,n.amount=t.amount,n.openInNewTab=t.openInNewTab??!0,n.redirectUrl=t.redirectUrl,n.payWithExchange=t.payWithExchange,n.error=null}catch(e){throw new c(o.INVALID_PAYMENT_CONFIG,e.message)}},getPaymentAsset(){return n.paymentAsset},getExchanges(){return n.exchanges},async fetchExchanges(){try{n.isLoading=!0;const t=await G({page:V,asset:R(n.paymentAsset.network,n.paymentAsset.asset),amount:n.amount.toString()});n.exchanges=t.exchanges.slice(0,2)}catch{throw T.showError(N.UNABLE_TO_GET_EXCHANGES),new c(o.UNABLE_TO_GET_EXCHANGES)}finally{n.isLoading=!1}},async getAvailableExchanges(t){var e;try{const s=t!=null&&t.asset&&(t!=null&&t.network)?R(t.network,t.asset):void 0;return await G({page:(t==null?void 0:t.page)??V,asset:s,amount:(e=t==null?void 0:t.amount)==null?void 0:e.toString()})}catch{throw new c(o.UNABLE_TO_GET_EXCHANGES)}},async getPayUrl(t,e,s=!1){try{const a=Number(e.amount),r=await ne({exchangeId:t,asset:R(e.network,e.asset),amount:a.toString(),recipient:`${e.network}:${e.recipient}`});return _.sendEvent({type:"track",event:"PAY_EXCHANGE_SELECTED",properties:{source:"pay",exchange:{id:t},configuration:{network:e.network,asset:e.asset,recipient:e.recipient,amount:a},currentPayment:{type:"exchange",exchangeId:t},headless:s}}),s&&(this.initiatePayment(),_.sendEvent({type:"track",event:"PAY_INITIATED",properties:{source:"pay",paymentId:n.paymentId||v,configuration:{network:e.network,asset:e.asset,recipient:e.recipient,amount:a},currentPayment:{type:"exchange",exchangeId:t}}})),r}catch(a){throw a instanceof Error&&a.message.includes("is not supported")?new c(o.ASSET_NOT_SUPPORTED):new Error(a.message)}},async openPayUrl(t,e,s=!1){try{const a=await this.getPayUrl(t.exchangeId,e,s);if(!a)throw new c(o.UNABLE_TO_GET_PAY_URL);const i=t.openInNewTab??!0?"_blank":"_self";return C.openHref(a.url,i),a}catch(a){throw a instanceof c?n.error=a.message:n.error=N.GENERIC_PAYMENT_ERROR,new c(o.UNABLE_TO_GET_PAY_URL)}},subscribeEvents(){n.isConfigured||(w.subscribeKey("connections",t=>{t.size>0&&this.handlePayment()}),p.subscribeChainProp("accountState",t=>{const e=w.hasAnyConnection(g.CONNECTOR_ID.WALLET_CONNECT);t!=null&&t.caipAddress&&(e?setTimeout(()=>{this.handlePayment()},100):this.handlePayment())}))},async handlePayment(){n.currentPayment={type:"wallet",status:"IN_PROGRESS"};const t=p.getActiveCaipAddress();if(!t)return;const{chainId:e,address:s}=b.parseCaipAddress(t),a=p.state.activeChain;if(!s||!e||!a||!B.getProvider(a))return;const i=p.state.activeCaipNetwork;if(i&&!n.isPaymentInProgress)try{this.initiatePayment();const u=p.getAllRequestedCaipNetworks(),d=p.getAllApprovedCaipNetworkIds();switch(await oe({paymentAssetNetwork:n.paymentAsset.network,activeCaipNetwork:i,approvedCaipNetworkIds:d,requestedCaipNetworks:u}),await x.open({view:"PayLoading"}),a){case g.CHAIN.EVM:n.paymentAsset.asset==="native"&&(n.currentPayment.result=await ce(n.paymentAsset,a,{recipient:n.recipient,amount:n.amount,fromAddress:s})),n.paymentAsset.asset.startsWith("0x")&&(n.currentPayment.result=await ue(n.paymentAsset,{recipient:n.recipient,amount:n.amount,fromAddress:s})),n.currentPayment.status="SUCCESS";break;case g.CHAIN.SOLANA:n.currentPayment.result=await le(a,{recipient:n.recipient,amount:n.amount,fromAddress:s,tokenMint:n.paymentAsset.asset==="native"?void 0:n.paymentAsset.asset}),n.currentPayment.status="SUCCESS";break;default:throw new c(o.INVALID_CHAIN_NAMESPACE)}}catch(u){u instanceof c?n.error=u.message:n.error=N.GENERIC_PAYMENT_ERROR,n.currentPayment.status="FAILED",T.showError(n.error)}finally{n.isPaymentInProgress=!1}},getExchangeById(t){return n.exchanges.find(e=>e.id===t)},validatePayConfig(t){const{paymentAsset:e,recipient:s,amount:a}=t;if(!e)throw new c(o.INVALID_PAYMENT_CONFIG);if(!s)throw new c(o.INVALID_RECIPIENT);if(!e.asset)throw new c(o.INVALID_ASSET);if(a==null||a<=0)throw new c(o.INVALID_AMOUNT)},handlePayWithWallet(){const t=p.getActiveCaipAddress();if(!t){L.push("Connect");return}const{chainId:e,address:s}=b.parseCaipAddress(t),a=p.state.activeChain;if(!s||!e||!a){L.push("Connect");return}this.handlePayment()},async handlePayWithExchange(t){try{n.currentPayment={type:"exchange",exchangeId:t};const{network:e,asset:s}=n.paymentAsset,a={network:e,asset:s,amount:n.amount,recipient:n.recipient},r=await this.getPayUrl(t,a);if(!r)throw new c(o.UNABLE_TO_INITIATE_PAYMENT);return n.currentPayment.sessionId=r.sessionId,n.currentPayment.status="IN_PROGRESS",n.currentPayment.exchangeId=t,this.initiatePayment(),{url:r.url,openInNewTab:n.openInNewTab}}catch(e){return e instanceof c?n.error=e.message:n.error=N.GENERIC_PAYMENT_ERROR,n.isPaymentInProgress=!1,T.showError(n.error),null}},async getBuyStatus(t,e){var s,a;try{const r=await se({sessionId:e,exchangeId:t});return(r.status==="SUCCESS"||r.status==="FAILED")&&_.sendEvent({type:"track",event:r.status==="SUCCESS"?"PAY_SUCCESS":"PAY_ERROR",properties:{message:r.status==="FAILED"?C.parseError(n.error):void 0,source:"pay",paymentId:n.paymentId||v,configuration:{network:n.paymentAsset.network,asset:n.paymentAsset.asset,recipient:n.recipient,amount:n.amount},currentPayment:{type:"exchange",exchangeId:(s=n.currentPayment)==null?void 0:s.exchangeId,sessionId:(a=n.currentPayment)==null?void 0:a.sessionId,result:r.txHash}}}),r}catch{throw new c(o.UNABLE_TO_GET_BUY_STATUS)}},async updateBuyStatus(t,e){try{const s=await this.getBuyStatus(t,e);n.currentPayment&&(n.currentPayment.status=s.status,n.currentPayment.result=s.txHash),(s.status==="SUCCESS"||s.status==="FAILED")&&(n.isPaymentInProgress=!1)}catch{throw new c(o.UNABLE_TO_GET_BUY_STATUS)}},initiatePayment(){n.isPaymentInProgress=!0,n.paymentId=crypto.randomUUID()},initializeAnalytics(){n.analyticsSet||(n.analyticsSet=!0,this.subscribeKey("isPaymentInProgress",t=>{var e;if((e=n.currentPayment)!=null&&e.status&&n.currentPayment.status!=="UNKNOWN"){const s={IN_PROGRESS:"PAY_INITIATED",SUCCESS:"PAY_SUCCESS",FAILED:"PAY_ERROR"}[n.currentPayment.status];_.sendEvent({type:"track",event:s,properties:{message:n.currentPayment.status==="FAILED"?C.parseError(n.error):void 0,source:"pay",paymentId:n.paymentId||v,configuration:{network:n.paymentAsset.network,asset:n.paymentAsset.asset,recipient:n.recipient,amount:n.amount},currentPayment:{type:n.currentPayment.type,exchangeId:n.currentPayment.exchangeId,sessionId:n.currentPayment.sessionId,result:n.currentPayment.result}}})}}))}},de=W`
|
|
2
2
|
wui-separator {
|
|
3
3
|
margin: var(--apkt-spacing-3) calc(var(--apkt-spacing-3) * -1) var(--apkt-spacing-2)
|
|
4
4
|
calc(var(--apkt-spacing-3) * -1);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{j as c,r as l,l as u,m as f}from"./index
|
|
1
|
+
import{j as c,r as l,l as u,m as f}from"./index-CfNMkRWR.js";import{n as p,c as m}from"./index-BeofziA8.js";const g=c`
|
|
2
2
|
:host {
|
|
3
3
|
display: block;
|
|
4
4
|
width: 100px;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{j as g,l as f,R as u,m as e,E as P,r as k,k as A}from"./index
|
|
1
|
+
import{j as g,l as f,R as u,m as e,E as P,r as k,k as A}from"./index-CfNMkRWR.js";import{r as y,c as b,n as w}from"./index-BeofziA8.js";import"./index-DVhkZrcL.js";import{H as x}from"./HelpersUtil-CjQE0S9b.js";import{o as v}from"./if-defined-CU5rjy4y.js";import"./index-CzPBWTgH.js";import"./index-DUSIVMYc.js";const I=g`
|
|
2
2
|
:host {
|
|
3
3
|
display: block;
|
|
4
4
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{j as l,r as b,k as p,l as h,m as v}from"./index
|
|
1
|
+
import{j as l,r as b,k as p,l as h,m as v}from"./index-CfNMkRWR.js";import{n as r,c as f}from"./index-BeofziA8.js";const m=l`
|
|
2
2
|
button {
|
|
3
3
|
background-color: transparent;
|
|
4
4
|
padding: ${({spacing:t})=>t[1]};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{j as l,r as p,k as h,l as b,m as y}from"./index
|
|
1
|
+
import{j as l,r as p,k as h,l as b,m as y}from"./index-CfNMkRWR.js";import{n as r,c as f}from"./index-BeofziA8.js";import{o as v}from"./if-defined-CU5rjy4y.js";const m=l`
|
|
2
2
|
:host {
|
|
3
3
|
position: relative;
|
|
4
4
|
}
|