1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2937],{52937:(e,t,a)=>{a.r(t),a.d(t,{W3mPayLoadingView:()=>B,W3mPayView:()=>j,baseETH:()=>J,baseSepoliaETH:()=>Q,baseUSDC:()=>X,getExchanges:()=>Y,getIsPaymentInProgress:()=>K,getPayError:()=>F,getPayResult:()=>H,openPay:()=>G});var i=a(41270),r=a(12456),o=a(81440),n=a(69485),s=a(18539),c=a(25315),l=a(59085),u=a(10840),d=a(85845),p=a(97778);a(83066),a(58301),a(66571),a(49925),a(12026),a(52847),a(77749),a(93278),a(61856),a(33575),a(85893),a(89991);var h=a(30522),g=a(61156),w=a(71281),v=a(11731),y=a(66699),m=a(83503),b=a(7765);let f={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"},x={[f.INVALID_PAYMENT_CONFIG]:"Invalid payment configuration",[f.INVALID_RECIPIENT]:"Invalid recipient address",[f.INVALID_ASSET]:"Invalid asset specified",[f.INVALID_AMOUNT]:"Invalid payment amount",[f.UNKNOWN_ERROR]:"Unknown payment error occurred",[f.UNABLE_TO_INITIATE_PAYMENT]:"Unable to initiate payment",[f.INVALID_CHAIN_NAMESPACE]:"Invalid chain namespace",[f.GENERIC_PAYMENT_ERROR]:"Unable to process payment",[f.UNABLE_TO_GET_EXCHANGES]:"Unable to get exchanges",[f.ASSET_NOT_SUPPORTED]:"Asset not supported by the selected exchange",[f.UNABLE_TO_GET_PAY_URL]:"Unable to get payment URL",[f.UNABLE_TO_GET_BUY_STATUS]:"Unable to get buy status"};class E extends Error{get message(){return x[this.code]}constructor(e,t){super(x[e]),this.name="AppKitPayError",this.code=e,this.details=t,Error.captureStackTrace&&Error.captureStackTrace(this,E)}}var I=a(68129);class P extends Error{}async function A(e,t){let a=function(){let e=I.H.getSnapshot().projectId;return`https://rpc.walletconnect.org/v1/json-rpc?projectId=${e}`}(),i=await fetch(a,{method:"POST",body:JSON.stringify({jsonrpc:"2.0",id:1,method:e,params:t}),headers:{"Content-Type":"application/json"}}),r=await i.json();if(r.error)throw new P(r.error.message);return r}async function k(e){return(await A("reown_getExchanges",e)).result}async function N(e){return(await A("reown_getExchangePayUrl",e)).result}async function _(e){return(await A("reown_getExchangeBuyStatus",e)).result}let T=["eip155"],S={eip155:{native:{assetNamespace:"slip44",assetReference:"60"},defaultTokenNamespace:"erc20"},solana:{native:{assetNamespace:"slip44",assetReference:"501"},defaultTokenNamespace:"token"}};function C(e,t){let{chainNamespace:a,chainId:i}=w.C.parseCaipNetworkId(e),r=S[a];if(!r)throw Error(`Unsupported chain namespace for CAIP-19 formatting: ${a}`);let o=r.native.assetNamespace,n=r.native.assetReference;"native"!==t&&(o=r.defaultTokenNamespace,n=t);let s=`${a}:${i}`;return`${s}/${o}:${n}`}var R=a(60713);async function z(e){let{paymentAssetNetwork:t,activeCaipNetwork:a,approvedCaipNetworkIds:i,requestedCaipNetworks:r}=e,o=l.w.sortRequestedNetworks(i,r).find(e=>e.caipNetworkId===t);if(!o)throw new E(f.INVALID_PAYMENT_CONFIG);if(o.caipNetworkId===a.caipNetworkId)return;let n=s.W.getNetworkProp("supportsAllNetworks",o.chainNamespace);if(!(i?.includes(o.caipNetworkId)||n))throw new E(f.INVALID_PAYMENT_CONFIG);try{await s.W.switchActiveNetwork(o)}catch(e){throw new E(f.GENERIC_PAYMENT_ERROR,e)}}async function $(e,t,a){if(t!==v.o.CHAIN.EVM)throw new E(f.INVALID_CHAIN_NAMESPACE);if(!a.fromAddress)throw new E(f.INVALID_PAYMENT_CONFIG,"fromAddress is required for native EVM payments.");let i="string"==typeof a.amount?parseFloat(a.amount):a.amount;if(isNaN(i))throw new E(f.INVALID_PAYMENT_CONFIG);let r=e.metadata?.decimals??18,o=d.x.parseUnits(i.toString(),r);if("bigint"!=typeof o)throw new E(f.GENERIC_PAYMENT_ERROR);return await d.x.sendTransaction({chainNamespace:t,to:a.recipient,address:a.fromAddress,value:o,data:"0x"})??void 0}async function M(e,t){if(!t.fromAddress)throw new E(f.INVALID_PAYMENT_CONFIG,"fromAddress is required for ERC20 EVM payments.");let a=e.asset,i=t.recipient,r=Number(e.metadata.decimals),o=d.x.parseUnits(t.amount.toString(),r);if(void 0===o)throw new E(f.GENERIC_PAYMENT_ERROR);return await d.x.writeContract({fromAddress:t.fromAddress,tokenAddress:a,args:[i,o],method:"transfer",abi:R.v.getERC20Abi(a),chainNamespace:v.o.CHAIN.EVM})??void 0}let O="unknown",L=(0,h.BX)({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}),U={state:L,subscribe:e=>(0,h.B1)(L,()=>e(L)),subscribeKey:(e,t)=>(0,g.u$)(L,e,t),async handleOpenPay(e){this.resetState(),this.setPaymentConfig(e),this.subscribeEvents(),this.initializeAnalytics(),L.isConfigured=!0,y.E.sendEvent({type:"track",event:"PAY_MODAL_OPEN",properties:{exchanges:L.exchanges,configuration:{network:L.paymentAsset.network,asset:L.paymentAsset.asset,recipient:L.recipient,amount:L.amount}}}),await c.W.open({view:"Pay"})},resetState(){L.paymentAsset={network:"eip155:1",asset:"0x0",metadata:{name:"0x0",symbol:"0x0",decimals:0}},L.recipient="0x0",L.amount=0,L.isConfigured=!1,L.error=null,L.isPaymentInProgress=!1,L.isLoading=!1,L.currentPayment=void 0},setPaymentConfig(e){if(!e.paymentAsset)throw new E(f.INVALID_PAYMENT_CONFIG);try{L.paymentAsset=e.paymentAsset,L.recipient=e.recipient,L.amount=e.amount,L.openInNewTab=e.openInNewTab??!0,L.redirectUrl=e.redirectUrl,L.payWithExchange=e.payWithExchange,L.error=null}catch(e){throw new E(f.INVALID_PAYMENT_CONFIG,e.message)}},getPaymentAsset:()=>
1L.paymentAsset,getExchanges:()=>L.exchanges,async fetchExchanges(){try{L.isLoading=!0;let e=await k({page:0,asset:C(L.paymentAsset.network,L.paymentAsset.asset),amount:L.amount.toString()});L.exchanges=e.exchanges.slice(0,2)}catch(e){throw u.P.showError(x.UNABLE_TO_GET_EXCHANGES),new E(f.UNABLE_TO_GET_EXCHANGES)}finally{L.isLoading=!1}},async getAvailableExchanges(e){try{let t=e?.asset&&e?.network?C(e.network,e.asset):void 0;return await k({page:e?.page??0,asset:t,amount:e?.amount?.toString()})}catch(e){throw new E(f.UNABLE_TO_GET_EXCHANGES)}},async getPayUrl(e,t,a=!1){try{let i=Number(t.amount),r=await N({exchangeId:e,asset:C(t.network,t.asset),amount:i.toString(),recipient:`${t.network}:${t.recipient}`});return y.E.sendEvent({type:"track",event:"PAY_EXCHANGE_SELECTED",properties:{exchange:{id:e},configuration:{network:t.network,asset:t.asset,recipient:t.recipient,amount:i},currentPayment:{type:"exchange",exchangeId:e},headless:a}}),a&&(this.initiatePayment(),y.E.sendEvent({type:"track",event:"PAY_INITIATED",properties:{paymentId:L.paymentId||O,configuration:{network:t.network,asset:t.asset,recipient:t.recipient,amount:i},currentPayment:{type:"exchange",exchangeId:e}}})),r}catch(e){if(e instanceof Error&&e.message.includes("is not supported"))throw new E(f.ASSET_NOT_SUPPORTED);throw Error(e.message)}},async openPayUrl(e,t,a=!1){try{let i=await this.getPayUrl(e.exchangeId,t,a);if(!i)throw new E(f.UNABLE_TO_GET_PAY_URL);let r=e.openInNewTab??!0;return l.w.openHref(i.url,r?"_blank":"_self"),i}catch(e){throw e instanceof E?L.error=e.message:L.error=x.GENERIC_PAYMENT_ERROR,new E(f.UNABLE_TO_GET_PAY_URL)}},subscribeEvents(){L.isConfigured||(b.A.subscribeProviders(async e=>{let t=s.W.state.activeChain;b.A.getProvider(t)&&await this.handlePayment()}),n.U.subscribeKey("caipAddress",async e=>{e&&await this.handlePayment()}))},async handlePayment(){L.currentPayment={type:"wallet",status:"IN_PROGRESS"};let e=n.U.state.caipAddress;if(!e)return;let{chainId:t,address:a}=w.C.parseCaipAddress(e),i=s.W.state.activeChain;if(!a||!t||!i||!b.A.getProvider(i))return;let r=s.W.state.activeCaipNetwork;if(r&&!L.isPaymentInProgress)try{this.initiatePayment();let e=s.W.getAllRequestedCaipNetworks(),t=s.W.getAllApprovedCaipNetworkIds();if(await z({paymentAssetNetwork:L.paymentAsset.network,activeCaipNetwork:r,approvedCaipNetworkIds:t,requestedCaipNetworks:e}),await c.W.open({view:"PayLoading"}),i===v.o.CHAIN.EVM)"native"===L.paymentAsset.asset&&(L.currentPayment.result=await $(L.paymentAsset,i,{recipient:L.recipient,amount:L.amount,fromAddress:a})),L.paymentAsset.asset.startsWith("0x")&&(L.currentPayment.result=await M(L.paymentAsset,{recipient:L.recipient,amount:L.amount,fromAddress:a})),L.currentPayment.status="SUCCESS";else throw new E(f.INVALID_CHAIN_NAMESPACE)}catch(e){e instanceof E?L.error=e.message:L.error=x.GENERIC_PAYMENT_ERROR,L.currentPayment.status="FAILED",u.P.showError(L.error)}finally{L.isPaymentInProgress=!1}},getExchangeById:e=>L.exchanges.find(t=>t.id===e),validatePayConfig(e){let{paymentAsset:t,recipient:a,amount:i}=e;if(!t)throw new E(f.INVALID_PAYMENT_CONFIG);if(!a)throw new E(f.INVALID_RECIPIENT);if(!t.asset)throw new E(f.INVALID_ASSET);if(null==i||i<=0)throw new E(f.INVALID_AMOUNT)},handlePayWithWallet(){let e=n.U.state.caipAddress;if(!e){m.I.push("Connect");return}let{chainId:t,address:a}=w.C.parseCaipAddress(e),i=s.W.state.activeChain;if(!a||!t||!i){m.I.push("Connect");return}this.handlePayment()},async handlePayWithExchange(e){try{L.currentPayment={type:"exchange",exchangeId:e};let{network:t,asset:a}=L.paymentAsset,i={network:t,asset:a,amount:L.amount,recipient:L.recipient},r=await this.getPayUrl(e,i);if(!r)throw new E(f.UNABLE_TO_INITIATE_PAYMENT);return L.currentPayment.sessionId=r.sessionId,L.currentPayment.status="IN_PROGRESS",L.currentPayment.exchangeId=e,this.initiatePayment(),{url:r.url,openInNewTab:L.openInNewTab}}catch(e){return e instanceof E?L.error=e.message:L.error=x.GENERIC_PAYMENT_ERROR,L.isPaymentInProgress=!1,u.P.showError(L.error),null}},async getBuyStatus(e,t){try{let a=await _({sessionId:t,exchangeId:e});return("SUCCESS"===a.status||"FAILED"===a.status)&&y.E.sendEvent({type:"track",event:"SUCCESS"===a.status?"PAY_SUCCESS":"PAY_ERROR",properties:{paymentId:L.paymentId||O,configuration:{network:L.paymentAsset.network,asset:L.paymentAsset.asset,recipient:L.recipient,amount:L.amount},currentPayment:{type:"exchange",exchangeId:L.currentPayment?.exchangeId,sessionId:L.currentPayment?.sessionId,result:a.txHash}}}),a}catch(e){throw new E(f.UNABLE_TO_GET_BUY_STATUS)}},async updateBuyStatus(e,t){try{let a=await this.getBuyStatus(e,t);L.currentPayment&&(L.currentPayment.status=a.status,L.currentPayment.result=a.txHash),("SUCCESS"===a.status||"FAILED"===a.status)&&(L.isPaymentInProgress=!1)}catch(e){throw new E(f.UNABLE_TO_GET_BUY_STATUS)}},initiatePayment(){L.isPaymentInProgress=!0,L.paymentId=crypto.randomUUID()},initializeAnalytics(){L.analyticsSet||(L.analyticsSet=!0,this.subscribeKey("isPaymentInProgress",e=>{if(L.currentPayment?.status&&"UNKNOWN"!==L.currentPayment.status){let e={IN_PROGRESS:"PAY_INITIATED",SUCCESS:"PAY_SUCCESS",FAILED:"PAY_ERROR"}[L.currentPayment.status];y.E.sendEvent({type:"track",event:e,properties:{paymentId:L.paymentId||O,configuration:{network:L.paymentAsset.network,asset:L.paymentAsset.asset,recipient:L.recipient,amount:L.amount},currentPayment:{type:L.currentPayment.type,exchangeId:L.currentPayment.exchangeId,sessionId:L.currentPayment.sessionId,result:L.currentPayment.result}}})}}))}},W=(0,i.AH)` 2 wui-separator { 3 margin: var(--wui-spacing-m) calc(var(--wui-spacing-m) * -1) var(--wui-spacing-xs) 4 calc(var(--wui-spacing-m) * -1); 5 width: calc(100% + var(--wui-spacing-s) * 2); 6 } 7 8 .token-display { 9 padding: var(--wui-spacing-s) var(--wui-spacing-m); 10 border-radius: var(--wui-border-radius-s); 11 background-color: var(--wui-color-bg-125); 12 margin-top: var(--wui-spacing-s); 13 margin-bottom: var(--wui-spacing-s); 14 } 15 16 .token-display wui-text { 17 text-transform: none; 18 } 19 20 wui-loading-spinner { 21 padding: var(--wui-spacing-xs); 22 } 23`;var D=function(e,t,a,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(n=(o<3?r(n):o>3?r(t,a,n):r(t,a))||n);return o>3&&n&&Object.defineProperty(t,a,n),n};let j=class extends i.WF{constructor(){super(),this.unsubscribe=[],this.amount="",this.tokenSymbol="",this.networkName="",this.exchanges=U.state.exchanges,this.isLoading=U.state.isLoading,this.loadingExchangeId=null,this.connectedWalletInfo=n.U.state.connectedWalletInfo,this.initializePaymentDetails(),this.unsubscribe.push(U.subscribeKey("exchanges",e=>this.exchanges=e)),this.unsubscribe.push(U.subscribeKey("isLoading",e=>this.isLoading=e)),this.unsubscribe.push(n.U.subscribe(e=>this.connectedWalletInfo=e.connectedWalletInfo)),U.fetchExchanges()}get isWalletConnected(){return"connected"===n.U.state.status}render(){return(0,i.qy)` 24 <wui-flex flexDirection="column"> 25 <wui-flex flexDirection="column" .padding=${["0","l","l","l"]} gap="s"> 26 ${this.renderPaymentHeader()} 27 28 <wui-flex flexDirection="column" gap="s"> 29 ${this.renderPayWithWallet()} ${this.renderExchangeOptions()} 30 </wui-flex> 31 </wui-flex> 32 </wui-flex> 33 `}initializePaymentDetails(){let e=U.getPaymentAsset();this.networkName=e.network,this.tokenSymbol=e.metadata.symbol,this.amount=U.state.amount.toString()}renderPayWithWallet(){return!function(e){let{chainNamespace:t}=w.C.parseCaipNetworkId(e);return T.includes(t)}(this.networkName)?(0,i.qy)``:(0,i.qy)`<wui-flex flexDirection="column" gap="s"> 34 ${this.isWalletConnected?this.renderConnectedView():this.renderDisconnectedView()} 35 </wui-flex> 36 <wui-separator text="or"></wui-separator>`}renderPaymentHeader(){let e=this.networkName;if(this.networkName){let t=s.W.getAllRequestedCaipNetworks().find(e=>e.caipNetworkId===this.networkName);t&&(e=t.name)}return(0,i.qy)` 37 <wui-flex flexDirection="column" alignItems="center"> 38 <wui-flex alignItems="center" gap="xs"> 39 <wui-text variant="large-700" color="fg-100">${this.amount||"0.0000"}</wui-text> 40 <wui-flex class="token-display" alignItems="center" gap="xxs"> 41 <wui-text variant="paragraph-600" color="fg-100"> 42 ${this.tokenSymbol||"Unknown Asset"} 43 </wui-text> 44 ${e?(0,i.qy)` 45 <wui-text variant="small-500" color="fg-200"> on ${e} </wui-text> 46 `:""} 47 </wui-flex> 48 </wui-flex> 49 </wui-flex> 50 `}renderConnectedView(){let e=this.connectedWalletInfo?.name||"connected wallet";return(0,i.qy)` 51 <wui-list-item 52 @click=${this.onWalletPayment} 53 ?chevron=${!0} 54 data-testid="wallet-payment-option" 55 > 56 <wui-flex alignItems="center" gap="s"> 57 <wui-wallet-image 58 size="sm" 59 imageSrc=${(0,o.J)(this.connectedWalletInfo?.icon)}
60 name=${(0,o.J)(this.connectedWalletInfo?.name)} 61 ></wui-wallet-image> 62 <wui-text variant="paragraph-500" color="inherit">Pay with ${e}</wui-text> 63 </wui-flex> 64 </wui-list-item> 65 66 <wui-list-item 67 variant="icon" 68 iconVariant="overlay" 69 icon="disconnect" 70 @click=${this.onDisconnect} 71 data-testid="disconnect-button" 72 ?chevron=${!1} 73 > 74 <wui-text variant="paragraph-500" color="fg-200">Disconnect</wui-text> 75 </wui-list-item> 76 `}renderDisconnectedView(){return(0,i.qy)`<wui-list-item 77 variant="icon" 78 iconVariant="overlay" 79 icon="walletPlaceholder" 80 @click=${this.onWalletPayment} 81 ?chevron=${!0} 82 data-testid="wallet-payment-option" 83 > 84 <wui-text variant="paragraph-500" color="inherit">Pay from wallet</wui-text> 85 </wui-list-item>`}renderExchangeOptions(){return this.isLoading?(0,i.qy)`<wui-flex justifyContent="center" alignItems="center"> 86 <wui-spinner size="md"></wui-spinner> 87 </wui-flex>`:0===this.exchanges.length?(0,i.qy)`<wui-flex justifyContent="center" alignItems="center"> 88 <wui-text variant="paragraph-500" color="fg-100">No exchanges available</wui-text> 89 </wui-flex>`:this.exchanges.map(e=>(0,i.qy)` 90 <wui-list-item 91 @click=${()=>this.onExchangePayment(e.id)}
92 data-testid="exchange-option-${e.id}" 93 ?chevron=${!0} 94 ?disabled=${null!==this.loadingExchangeId} 95 > 96 <wui-flex alignItems="center" gap="s"> 97 ${this.loadingExchangeId===e.id?(0,i.qy)`<wui-loading-spinner color="accent-100" size="md"></wui-loading-spinner>`:(0,i.qy)`<wui-wallet-image 98 size="sm" 99 imageSrc=${(0,o.J)(e.imageUrl)} 100 name=${e.name} 101 ></wui-wallet-image>`} 102 <wui-text flexGrow="1" variant="paragraph-500" color="inherit" 103 >Pay with ${e.name} <wui-spinner size="sm" color="fg-200"></wui-spinner 104 ></wui-text> 105 </wui-flex> 106 </wui-list-item> 107 `)}onWalletPayment(){U.handlePayWithWallet()}async onExchangePayment(e){try{this.loadingExchangeId=e;let t=await U.handlePayWithExchange(e);t&&(await c.W.open({view:"PayLoading"}),l.w.openHref(t.url,t.openInNewTab?"_blank":"_self"))}catch(e){console.error("Failed to pay with exchange",e),u.P.showError("Failed to pay with exchange")}finally{this.loadingExchangeId=null}}async onDisconnect(e){e.stopPropagation();try{await d.x.disconnect(),c.W.close()}catch{console.error("Failed to disconnect"),u.P.showError("Failed to disconnect")}}disconnectedCallback(){this.unsubscribe.forEach(e=>e())}};j.styles=W,D([(0,r.wk)()],j.prototype,"amount",void 0),D([(0,r.wk)()],j.prototype,"tokenSymbol",void 0),D([(0,r.wk)()],j.prototype,"networkName",void 0),D([(0,r.wk)()],j.prototype,"exchanges",void 0),D([(0,r.wk)()],j.prototype,"isLoading",void 0),D([(0,r.wk)()],j.prototype,"loadingExchangeId",void 0),D([(0,r.wk)()],j.prototype,"connectedWalletInfo",void 0),j=D([(0,p.EM)("w3m-pay-view")],j);var V=a(39519);a(39515);let Z=(0,i.AH)` 108 :host { 109 display: block; 110 height: 100%; 111 width: 100%; 112 } 113`;var q=function(e,t,a,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(n=(o<3?r(n):o>3?r(t,a,n):r(t,a))||n);return o>3&&n&&Object.defineProperty(t,a,n),n};let B=class extends i.WF{constructor(){super(),this.loadingMessage="",this.subMessage="",this.paymentState="in-progress",this.paymentState=U.state.isPaymentInProgress?"in-progress":"completed",this.updateMessages(),this.setupSubscription(),this.setupExchangeSubscription()}disconnectedCallback(){clearInterval(this.exchangeSubscription)}render(){return(0,i.qy)` 114 <wui-flex 115 flexDirection="column" 116 alignItems="center" 117 .padding=${["xl","xl","xl","xl"]} 118 gap="xl" 119 > 120 <wui-flex justifyContent="center" alignItems="center"> ${this.getStateIcon()} </wui-flex> 121 <wui-flex flexDirection="column" alignItems="center" gap="xs"> 122 <wui-text align="center" variant="paragraph-500" color="fg-100"> 123 ${this.loadingMessage} 124 </wui-text> 125 <wui-text align="center" variant="small-400" color="fg-200"> 126 ${this.subMessage} 127 </wui-text> 128 </wui-flex> 129 </wui-flex> 130 `}updateMessages(){switch(this.paymentState){case"completed":this.loadingMessage="Payment completed",this.subMessage="Your transaction has been successfully processed";break;case"error":this.loadingMessage="Payment failed",this.subMessage="There was an error processing your transaction";break;default:U.state.currentPayment?.type==="exchange"?(this.loadingMessage="Payment initiated",this.subMessage="Please complete the payment on the exchange"):(this.loadingMessage="Awaiting payment confirmation",this.subMessage="Please confirm the payment transaction in your wallet")}}getStateIcon(){switch(this.paymentState){case"completed":return this.successTemplate();case"error":return this.errorTemplate();default:return this.loaderTemplate()}}setupExchangeSubscription(){U.state.currentPayment?.type==="exchange"&&(this.exchangeSubscription=setInterval(async()=>{let e=U.state.currentPayment?.exchangeId,t=U.state.currentPayment?.sessionId;e&&t&&(await U.updateBuyStatus(e,t),U.state.currentPayment?.status==="SUCCESS"&&clearInterval(this.exchangeSubscription))},4e3))}setupSubscription(){U.subscribeKey("isPaymentInProgress",e=>{e||"in-progress"!==this.paymentState||(U.state.error||!U.state.currentPayment?.result?this.paymentState="error":this.paymentState="completed",this.updateMessages(),setTimeout(()=>{"disconnected"!==d.x.state.status&&c.W.close()},3e3))}),U.subscribeKey("error",e=>{e&&"in-progress"===this.paymentState&&(this.paymentState="error",this.updateMessages())})}loaderTemplate(){let e=V.W.state.themeVariables["--w3m-border-radius-master"],t=e?parseInt(e.replace("px",""),10):4;return(0,i.qy)`<wui-loading-thumbnail radius=${9*t}></wui-loading-thumbnail>`}successTemplate(){return(0,i.qy)`<wui-icon size="xl" color="success-100" name="checkmark"></wui-icon>`}errorTemplate(){return(0,i.qy)`<wui-icon size="xl" color="error-100" name="close"></wui-icon>`}};async function G(e){return U.handleOpenPay(e)}function Y(){return U.getExchanges()}function H(){return U.state.currentPayment?.result}function F(){return U.state.error}function K(){return U.state.isPaymentInProgress}B.styles=Z,q([(0,r.wk)()],B.prototype,"loadingMessage",void 0),q([(0,r.wk)()],B.prototype,"subMessage",void 0),q([(0,r.wk)()],B.prototype,"paymentState",void 0),B=q([(0,p.EM)("w3m-pay-loading-view")],B);let J={network:"eip155:8453",asset:"native",metadata:{name:"Ethereum",symbol
130:"ETH",decimals:18}},X={network:"eip155:8453",asset:"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},Q={network:"eip155:84532",asset:"native",metadata:{name:"Ethereum",symbol:"ETH",decimals:18}}},83066:(e,t,a)=>{a(64001)},49925:(e,t,a)=>{var i=a(41270),r=a(12456);a(28009);var o=a(67998),n=a(45857);let s=(0,i.AH)` 131 :host { 132 position: relative; 133 } 134 135 button { 136 display: flex; 137 justify-content: center; 138 align-items: center; 139 height: 48px; 140 width: 100%; 141 background-color: var(--wui-color-accent-glass-010); 142 border-radius: var(--wui-border-radius-xs); 143 border: 1px solid var(--wui-color-accent-glass-010); 144 transition: background-color var(--wui-ease-out-power-1) var(--wui-duration-md); 145 will-change: background-color; 146 } 147 148 wui-tooltip { 149 padding: 7px var(--wui-spacing-s) 8px var(--wui-spacing-s); 150 position: absolute; 151 top: -8px; 152 left: 50%; 153 transform: translate(-50%, -100%); 154 opacity: 0; 155 display: none; 156 } 157 158 @media (hover: hover) and (pointer: fine) { 159 button:hover:enabled { 160 background-color: var(--wui-color-accent-glass-015); 161 } 162 163 button:active:enabled { 164 background-color: var(--wui-color-accent-glass-020); 165 } 166 } 167`;var c=function(e,t,a,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(n=(o<3?r(n):o>3?r(t,a,n):r(t,a))||n);return o>3&&n&&Object.defineProperty(t,a,n),n};let l=class extends i.WF{constructor(){super(...arguments),this.text="",this.icon="card"}render(){return(0,i.qy)`<button> 168 <wui-icon color="accent-100" name=${this.icon} size="lg"></wui-icon> 169 </button>`}};l.styles=[o.W5,o.fD,s],c([(0,r.MZ)()],l.prototype,"text",void 0),c([(0,r.MZ)()],l.prototype,"icon",void 0),l=c([(0,n.E)("wui-icon-button")],l)},12026:(e,t,a)=>{a(94441)},66571:(e,t,a)=>{a(28009)},52847:(e,t,a)=>{a(55602)},77749:(e,t,a)=>{var i=a(41270),r=a(12456),o=a(81440);a(28009),a(55602),a(88337),a(13076),a(7202);var n=a(67998),s=a(45857);a(38542);let c=(0,i.AH)` 170 button { 171 column-gap: var(--wui-spacing-s); 172 padding: 11px 18px 11px var(--wui-spacing-s); 173 width: 100%; 174 background-color: var(--wui-color-gray-glass-002); 175 border-radius: var(--wui-border-radius-xs); 176 color: var(--wui-color-fg-250); 177 transition: 178 color var(--wui-ease-out-power-1) var(--wui-duration-md), 179 background-color var(--wui-ease-out-power-1) var(--wui-duration-md); 180 will-change: color, background-color; 181 } 182 183 button[data-iconvariant='square'], 184 button[data-iconvariant='square-blue'] { 185 padding: 6px 18px 6px 9px; 186 } 187 188 button > wui-flex { 189 flex: 1; 190 } 191 192 button > wui-image { 193 width: 32px; 194 height: 32px; 195 box-shadow: 0 0 0 2px var(--wui-color-gray-glass-005); 196 border-radius: var(--wui-border-radius-3xl); 197 } 198 199 button > wui-icon { 200 width: 36px; 201 height: 36px; 202 transition: opacity var(--wui-ease-out-power-1) var(--wui-duration-md); 203 will-change: opacity; 204 } 205 206 button > wui-icon-box[data-variant='blue'] { 207 box-shadow: 0 0 0 2px var(--wui-color-accent-glass-005); 208 } 209 210 button > wui-icon-box[data-variant='overlay'] { 211 box-shadow: 0 0 0 2px var(--wui-color-gray-glass-005); 212 } 213 214 button > wui-icon-box[data-variant='square-blue'] { 215 border-radius: var(--wui-border-radius-3xs); 216 position: relative; 217 border: none; 218 width: 36px; 219 height: 36px; 220 } 221 222 button > wui-icon-box[data-variant='square-blue']::after { 223 content: ''; 224 position: absolute; 225 top: 0; 226 bottom: 0; 227 left: 0; 228 right: 0; 229 border-radius: inherit; 230 border: 1px solid var(--wui-color-accent-glass-010); 231 pointer-events: none; 232 } 233 234 button > wui-icon:last-child { 235 width: 14px; 236 height: 14px; 237 } 238 239 button:disabled { 240 color: var(--wui-color-gray-glass-020); 241 } 242 243 button[data-loading='true'] > wui-icon { 244 opacity: 0; 245 } 246 247 wui-loading-spinner { 248 position: absolute; 249 right: 18px; 250 top: 50%; 251 transform: translateY(-50%); 252 } 253`;var l=function(e,t,a,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(n=(o<3?r(n):o>3?r(t,a,n):r(t,a))||n);return o>3&&n&&Object.defineProperty(t,a,n),n};let u=class extends i.WF{constructor(){super(...arguments),this.tabIdx=void 0,this.variant="icon",this.disabled=!1,this.imageSrc=void 0,this.alt=void 0,this.chevron=!1,this.loading=!1}render(){return(0,i.qy)` 254 <button 255 ?disabled=${!!this.loading||!!this.disabled} 256 data-loading=${this.loading} 257 data-iconvariant=${(0,o.J)(this.iconVariant)} 258 tabindex=${(0,o.J)(this.tabIdx)} 259 > 260 ${this.loadingTemplate()} ${this.visualTemplate()} 261 <wui-flex gap="3xs"> 262 <slot></slot> 263 </wui-flex> 264 ${this.chevronTemplate()} 265 </button> 266 `}visualTemplate(){if("image"===this.variant&&this.imageSrc)return(0,i.qy)`<wui-image src=${this.imageSrc} alt=${this.alt??"list item"}></wui-image>`;if("square"===this.iconVariant&&this.icon&&"icon"===this.variant)return(0,i.qy)`<wui-icon name=${this.icon}></wui-icon>`;if("icon"===this.variant&&this.icon&&this.iconVariant){let e=["blue","square-blue"].includes(this.iconVariant)?"accent-100":"fg-200",t="square-blue"===this.iconVariant?"mdl":"md",a=this.iconSize?this.iconSize:t;return(0,i.qy)` 267 <wui-icon-box 268 data-variant=${this.iconVariant} 269 icon=${this.icon} 270 iconSize=${a} 271 background="transparent" 272 iconColor=${e} 273 backgroundColor=${e} 274 size=${t} 275 ></wui-icon-box> 276 `}return null}loadingTemplate(){return this.loading?(0,i.qy)`<wui-loading-spinner 277 data-testid="wui-list-item-loading-spinner" 278 color="fg-300" 279 ></wui-loading-spinner>`:(0,i.qy)``}chevronTemplate(){return this.chevron?(0,i.qy)`<wui-icon size="inherit" color="fg-200" name="chevronRight"></wui-icon>`:null}};u.styles=[n.W5,n.fD,c],l([(0,r.MZ)()],u.prototype,"icon",void 0),l([(0,r.MZ)()],u.prototype,"iconSize",void 0),l([(0,r.MZ)()],u.prototype,"tabIdx",void 0),l([(0,r.MZ)()],u.prototype,"variant",void 0),l([(0,r.MZ)()],u.prototype,"iconVariant",void 0),l([(0,r.MZ)({type:Boolean})],u.prototype,"disabled",void 0),l([(0,r.MZ)()],u.prototype,"imageSrc",void 0),l([(0,r.MZ)()],u.prototype,"alt",void 0),l([(0,r.MZ)({type:Boolean})],u.prototype,"chevron",void 0),l([(0,r.MZ)({type:Boolean})],u.prototype,"loading",void 0),u=l([(0,s.E)("wui-list-item")],u)},93278:(e,t,a)=>{a(88337)},39515:(e,t,a)=>{var i=a(41270),r=a(12456),o=a(67998),n=a(45857);let s=(0,i.AH)` 280 :host { 281 display: block; 282 width: var(--wui-box-size-md); 283 height: var(--wui-box-size-md); 284 } 285 286 svg { 287 width: var(--wui-box-size-md); 288 height: var(--wui-box-size-md); 289 } 290 291 rect { 292 fill: none; 293 stroke: var(--wui-color-accent-100); 294 stroke-width: 4px; 295 stroke-linecap: round; 296 animation: dash 1s linear infinite; 297 } 298 299 @keyframes dash { 300 to { 301 stroke-dashoffset: 0px; 302 } 303 } 304`;var c=function(e,t,a,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(n=(o<3?r(n):o>3?r(t,a,n):r(t,a))||n);return o>3&&n&&Object.defineProperty(t,a,n),n};let l=class extends i.WF{constructor(){super(...arguments),this.radius=36}render(){return this.svgLoaderTemplate()}svgLoaderTemplate(){let e=this.radius>50?50:this.radius,t=36-e;return(0,i.qy)` 305 <svg viewBox="0 0 110 110" width="110" height="110"> 306 <rect 307 x="2" 308 y="2" 309 width="106" 310 height="106" 311 rx=${e} 312 stroke-dasharray="${116+t} ${245+t}" 313 stroke-dashoffset=${360+1.75*t} 314 /> 315 </svg> 316 `}};l.styles=[o.W5,s],c([(0,r.MZ)({type:Number})],l.prototype,"radius",void 0),l=c([(0,n.E)("wui-loading-thumbnail")],l)},61856:(e,t,a)=>{a(83081)},33575:(e,t,a)=>{var i=a(41270),r=a(12456);a(13076);var o=a(67998),n=a(45857);let s=(0,i.AH)` 317 :host { 318 position: relative; 319 display: flex; 320 width: 100%; 321 height: 1px; 322 background-color: var(--wui-color-gray-glass-005); 323 justify-content: center;
324 align-items: center; 325 } 326 327 :host > wui-text { 328 position: absolute; 329 padding: 0px 10px; 330 background-color: var(--wui-color-modal-bg); 331 transition: background-color var(--wui-duration-lg) var(--wui-ease-out-power-1); 332 will-change: background-color; 333 } 334`;var c=function(e,t,a,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(n=(o<3?r(n):o>3?r(t,a,n):r(t,a))||n);return o>3&&n&&Object.defineProperty(t,a,n),n};let l=class extends i.WF{constructor(){super(...arguments),this.text=""}render(){return(0,i.qy)`${this.template()}`}template(){return this.text?(0,i.qy)`<wui-text variant="small-500" color="fg-200">${this.text}</wui-text>`:null}};l.styles=[o.W5,s],c([(0,r.MZ)()],l.prototype,"text",void 0),l=c([(0,n.E)("wui-separator")],l)},89991:(e,t,a)=>{a(72190)},39211:(e,t,a)=>{a.d(t,{a:()=>r});var i=a(41270);let r=(0,i.JW)`<svg viewBox="0 0 48 54" fill="none"> 335 <path 336 d="M43.4605 10.7248L28.0485 1.61089C25.5438 0.129705 22.4562 0.129705 19.9515 1.61088L4.53951 10.7248C2.03626 12.2051 0.5 14.9365 0.5 17.886V36.1139C0.5 39.0635 2.03626 41.7949 4.53951 43.2752L19.9515 52.3891C22.4562 53.8703 25.5438 53.8703 28.0485 52.3891L43.4605 43.2752C45.9637 41.7949 47.5 39.0635 47.5 36.114V17.8861C47.5 14.9365 45.9637 12.2051 43.4605 10.7248Z" 337 /> 338</svg>`},55602:(e,t,a)=>{var i=a(41270),r=a(12456),o=a(67998),n=a(45857);let s=(0,i.AH)` 339 :host { 340 display: block; 341 width: var(--local-width); 342 height: var(--local-height); 343 } 344 345 :host([data-object-fit='cover']) img { 346 object-fit: cover; 347 object-position: center center; 348 } 349 350 :host([data-object-fit='contain']) img { 351 object-fit: contain; 352 object-position: center center; 353 } 354 355 img { 356 display: block; 357 width: 100%; 358 height: 100%; 359 border-radius: inherit; 360 } 361`;var c=function(e,t,a,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(n=(o<3?r(n):o>3?r(t,a,n):r(t,a))||n);return o>3&&n&&Object.defineProperty(t,a,n),n};let l=class extends i.WF{constructor(){super(...arguments),this.src="./path/to/image.jpg",this.alt="Image",this.size=void 0,this.objectFit="cover"}render(){return this.objectFit&&(this.dataset.objectFit=this.objectFit),this.style.cssText=` 362 --local-width: ${this.size?`var(--wui-icon-size-${this.size});`:"100%"}; 363 --local-height: ${this.size?`var(--wui-icon-size-${this.size});`:"100%"}; 364 `,(0,i.qy)`<img src=${this.src} alt=${this.alt} @error=${this.handleImageError} />`}handleImageError(){this.dispatchEvent(new CustomEvent("onLoadError",{bubbles:!0,composed:!0}))}};l.styles=[o.W5,o.ck,s],c([(0,r.MZ)()],l.prototype,"src",void 0),c([(0,r.MZ)()],l.prototype,"alt",void 0),c([(0,r.MZ)()],l.prototype,"size",void 0),c([(0,r.MZ)()],l.prototype,"objectFit",void 0),l=c([(0,n.E)("wui-image")],l)},88337:(e,t,a)=>{var i=a(41270),r=a(12456),o=a(67998),n=a(45857);let s=(0,i.AH)` 365 :host { 366 display: flex; 367 } 368 369 :host([data-size='sm']) > svg { 370 width: 12px; 371 height: 12px; 372 } 373 374 :host([data-size='md']) > svg { 375 width: 16px; 376 height: 16px; 377 } 378 379 :host([data-size='lg']) > svg { 380 width: 24px; 381 height: 24px; 382 } 383 384 :host([data-size='xl']) > svg { 385 width: 32px; 386 height: 32px; 387 } 388 389 svg { 390 animation: rotate 2s linear infinite; 391 } 392 393 circle { 394 fill: none; 395 stroke: var(--local-color); 396 stroke-width: 4px; 397 stroke-dasharray: 1, 124; 398 stroke-dashoffset: 0; 399 stroke-linecap: round; 400 animation: dash 1.5s ease-in-out infinite; 401 } 402 403 :host([data-size='md']) > svg > circle { 404 stroke-width: 6px; 405 } 406 407 :host([data-size='sm']) > svg > circle { 408 stroke-width: 8px; 409 } 410 411 @keyframes rotate { 412 100% { 413 transform: rotate(360deg); 414 } 415 } 416 417 @keyframes dash { 418 0% { 419 stroke-dasharray: 1, 124; 420 stroke-dashoffset: 0; 421 } 422 423 50% { 424 stroke-dasharray: 90, 124; 425 stroke-dashoffset: -35; 426 } 427 428 100% { 429 stroke-dashoffset: -125; 430 } 431 } 432`;var c=function(e,t,a,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(n=(o<3?r(n):o>3?r(t,a,n):r(t,a))||n);return o>3&&n&&Object.defineProperty(t,a,n),n};let l=class extends i.WF{constructor(){super(...arguments),this.color="accent-100",this.size="lg"}render(){return this.style.cssText=`--local-color: ${"inherit"===this.color?"inherit":`var(--wui-color-${this.color})`}`,this.dataset.size=this.size,(0,i.qy)`<svg viewBox="25 25 50 50"> 433 <circle r="20" cy="50" cx="50"></circle> 434 </svg>`}};l.styles=[o.W5,s],c([(0,r.MZ)()],l.prototype,"color",void 0),c([(0,r.MZ)()],l.prototype,"size",void 0),l=c([(0,n.E)("wui-loading-spinner")],l)},64001:(e,t,a)=>{var i=a(41270),r=a(12456);a(88337),a(13076);var o=a(67998),n=a(45857);let s=(0,i.AH)` 435 :host { 436 width: var(--local-width); 437 position: relative; 438 } 439 440 button { 441 border: none; 442 border-radius: var(--local-border-radius); 443 width: var(--local-width); 444 white-space: nowrap; 445 } 446 447 /* -- Sizes --------------------------------------------------- */ 448 button[data-size='xs'] { 449 padding: var(--wui-spacing-3xs) var(--wui-spacing-s) var(--wui-spacing-3xs) var(--wui-spacing-s); 450 height: 24px; 451 } 452 453 button[data-size='xs'][data-icon-left='true'][data-icon-right='false'] { 454 padding: var(--wui-spacing-3xs) var(--wui-spacing-s) var(--wui-spacing-3xs) var(--wui-spacing-s); 455 } 456 457 button[data-size='xs'][data-icon-right='true'][data-icon-left='false'] { 458 padding: var(--wui-spacing-3xs) var(--wui-spacing-s) var(--wui-spacing-3xs) var(--wui-spacing-s); 459 } 460 461 button[data-size='sm'] { 462 padding: 7.2px var(--wui-spacing-s) 7.2px var(--wui-spacing-s); 463 height: 32px; 464 } 465 466 button[data-size='sm'][data-icon-left='true'][data-icon-right='false'] { 467 padding: 7.2px var(--wui-spacing-s) 7.2px var(--wui-spacing-s); 468 } 469 470 button[data-size='sm'][data-icon-right='true'][data-icon-left='false'] { 471 padding: 7.2px var(--wui-spacing-s) 7.2px var(--wui-spacing-s); 472 } 473 474 button[data-size='md'] { 475 padding: 8.2px var(--wui-spacing-l) 9px var(--wui-spacing-l); 476 height: 36px; 477 } 478 479 button[data-size='md'][data-icon-left='true'][data-icon-right='false'] { 480 padding: 8.2px var(--wui-spacing-l) 9px var(--wui-spacing-s); 481 } 482 483 button[data-size='md'][data-icon-right='true'][data-icon-left='false'] { 484 padding: 8.2px var(--wui-spacing-s) 9px var(--wui-spacing-l); 485 } 486 487 button[data-size='lg'] { 488 padding: var(--wui-spacing-m) var(--wui-spacing-2l); 489 height: 48px; 490 } 491 492 /* -- Variants --------------------------------------------------------- */ 493 button[data-variant='main'] { 494 background-color: var(--wui-color-accent-100); 495 color: var(--wui-color-inverse-100); 496 border: none; 497 box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-010); 498 } 499 500 button[data-variant='inverse'] { 501 background-color: var(--wui-color-inverse-100); 502 color: var(--wui-color-inverse-000); 503 border: none; 504 box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-010); 505 } 506 507 button[data-variant='accent'] { 508 background-color: var(--wui-color-accent-glass-010); 509 color: var(--wui-color-accent-100); 510 border: none; 511 box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-005); 512 } 513 514 button[data-variant='accent-error'] { 515 background: var(--wui-color-error-glass-015); 516 color: var(--wui-color-error-100); 517 border: none; 518 box-shadow: inset 0 0 0 1px var(--wui-color-error-glass-010); 519 } 520 521 button[data-variant='accent-success'] { 522 background: var(--wui-color-success-glass-015); 523 color: var(--wui-color-success-100); 524 border: none; 525 box-shadow: inset 0 0 0 1px var(--wui-color-success-glass-010); 526 } 527 528 button[data-variant='neutral'] { 529 background: transparent; 530 color: var(--wui-color-fg-100); 531 border: none; 532 box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-005); 533 } 534 535 /* -- Focus states --------------------------------------------------- */ 536 button[data-variant='main']:focus-visible:enabled { 537 background-color: var(--wui-color-accent-090); 538 box-shadow: 539 inset 0 0 0 1px var(--wui-color-accent-100), 540 0 0 0 4px var(--wui-color-accent-glass-020); 541 } 542 button[data-variant='inverse']:focus-visible:enabled { 543 background-color: var(--wui-color-inverse-100); 544 box-shadow: 545 inset 0 0 0 1px var(--wui-color-gray-glass-010), 546 0 0 0 4px var(--wui-color-accent-glass-020); 547 } 548 button[data-variant='accent']:focus-visible:enabled { 549 background-color: var(--wui-color-accent-glass-010); 550 box-shadow: 551 inset 0 0 0 1px var(--wui-color-accent-100), 552 0 0 0 4px var(--wui-color-accent-glass-020); 553 } 554 button[data-variant='accent-error']:focus-visible:enabled { 555 background: var(--wui-color-error-glass-015); 556 box-shadow: 557 inset 0 0 0 1px var(--wui-color-error-100), 558 0 0 0 4px var(--wui-color-error-glass-020); 559 } 560 button[data-variant='accent-success']:focus-visible:enabled { 561 background: var(--wui-color-success-glass-015); 562 box-shadow: 563 inset 0 0 0 1px var(--wui-color-success-100), 564 0 0 0 4px var(--wui-color-success-glass-020); 565 } 566 button[data-variant='neutral']:focus-visible:enabled { 567 background: var(--wui-color-gray-glass-005); 568 box-shadow: 569 inset 0 0 0 1px var(--wui-color-gray-glass-010), 570 0 0 0 4px var(--wui-color-gray-glass-002); 571 } 572 573 /* -- Hover & Active states ----------------------------------------------------------- */ 574 @media (hover: hover) and (pointer: fine) { 575 button[data-variant='main']:hover:enabled { 576 background-color: var(--wui-color-accent-090); 577 } 578 579 button[data-variant='main']:active:enabled { 580 background-color: var(--wui-color-accent-080); 581 } 582 583 button[data-variant='accent']:hover:enabled { 584 background-color: var(--wui-color-accent-glass-015); 585 } 586 587 button[data-variant='accent']:active:enabled { 588 background-color: var(--wui-color-accent-glass-020); 589 } 590 591 button[data-variant='accent-error']:hover:enabled { 592 background: var(--wui-color-error-glass-020); 593 color: var(--wui-color-error-100); 594 } 595 596 button[data-variant='accent-error']:active:enabled { 597 background: var(--wui-color-error-glass-030); 598 color: var(--wui-color-error-100); 599 } 600 601 button[data-variant='accent-success']:hover:enabled { 602 background: var(--wui-color-success-glass-020); 603 color: var(--wui-color-success-100); 604 } 605 606 button[data-variant='accent-success']:active:enabled { 607 background: var(--wui-color-success-glass-030); 608 color: var(--wui-color-success-100); 609 } 610 611 button[data-variant='neutral']:hover:enabled { 612 background: var(--wui-color-gray-glass-002); 613 } 614 615 button[data-variant='neutral']:active:enabled { 616 background: var(--wui-color-gray-glass-005); 617 } 618 619 button[data-size='lg'][data-icon-left='true'][data-icon-right='false'] { 620 padding-left: var(--wui-spacing-m); 621 } 622 623 button[data-size='lg'][data-icon-right='true'][data-icon-left='false'] { 624 padding-right: var(--wui-spacing-m); 625 } 626 } 627 628 /* -- Disabled state --------------------------------------------------- */ 629 button:disabled { 630 background-color: var(--wui-color-gray-glass-002); 631 box-shadow: inset 0 0 0 1px var(--wui-color-gray-glass-002); 632 color: var(--wui-color-gray-glass-020);
633 cursor: not-allowed; 634 } 635 636 button > wui-text { 637 transition: opacity var(--wui-ease-out-power-1) var(--wui-duration-md); 638 will-change: opacity; 639 opacity: var(--local-opacity-100); 640 } 641 642 ::slotted(*) { 643 transition: opacity var(--wui-ease-out-power-1) var(--wui-duration-md); 644 will-change: opacity; 645 opacity: var(--local-opacity-100); 646 } 647 648 wui-loading-spinner { 649 position: absolute; 650 left: 50%; 651 top: 50%; 652 transform: translate(-50%, -50%); 653 opacity: var(--local-opacity-000); 654 } 655`;var c=function(e,t,a,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(n=(o<3?r(n):o>3?r(t,a,n):r(t,a))||n);return o>3&&n&&Object.defineProperty(t,a,n),n};let l={main:"inverse-100",inverse:"inverse-000",accent:"accent-100","accent-error":"error-100","accent-success":"success-100",neutral:"fg-100",disabled:"gray-glass-020"},u={lg:"paragraph-600",md:"small-600",sm:"small-600",xs:"tiny-600"},d={lg:"md",md:"md",sm:"sm",xs:"sm"},p=class extends i.WF{constructor(){super(...arguments),this.size="lg",this.disabled=!1,this.fullWidth=!1,this.loading=!1,this.variant="main",this.hasIconLeft=!1,this.hasIconRight=!1,this.borderRadius="m"}render(){this.style.cssText=` 656 --local-width: ${this.fullWidth?"100%":"auto"}; 657 --local-opacity-100: ${this.loading?0:1}; 658 --local-opacity-000: ${this.loading?1:0}; 659 --local-border-radius: var(--wui-border-radius-${this.borderRadius}); 660 `;let e=this.textVariant??u[this.size];return(0,i.qy)` 661 <button 662 data-variant=${this.variant} 663 data-icon-left=${this.hasIconLeft} 664 data-icon-right=${this.hasIconRight} 665 data-size=${this.size} 666 ?disabled=${this.disabled} 667 > 668 ${this.loadingTemplate()} 669 <slot name="iconLeft" @slotchange=${()=>this.handleSlotLeftChange()}></slot> 670 <wui-text variant=${e} color="inherit"> 671 <slot></slot> 672 </wui-text> 673 <slot name="iconRight" @slotchange=${()=>this.handleSlotRightChange()}></slot> 674 </button> 675 `}handleSlotLeftChange(){this.hasIconLeft=!0}handleSlotRightChange(){this.hasIconRight=!0}loadingTemplate(){if(this.loading){let e=d[this.size],t=this.disabled?l.disabled:l[this.variant];return(0,i.qy)`<wui-loading-spinner color=${t} size=${e}></wui-loading-spinner>`}return(0,i.qy)``}};p.styles=[o.W5,o.fD,s],c([(0,r.MZ)()],p.prototype,"size",void 0),c([(0,r.MZ)({type:Boolean})],p.prototype,"disabled",void 0),c([(0,r.MZ)({type:Boolean})],p.prototype,"fullWidth",void 0),c([(0,r.MZ)({type:Boolean})],p.prototype,"loading",void 0),c([(0,r.MZ)()],p.prototype,"variant",void 0),c([(0,r.MZ)({type:Boolean})],p.prototype,"hasIconLeft",void 0),c([(0,r.MZ)({type:Boolean})],p.prototype,"hasIconRight",void 0),c([(0,r.MZ)()],p.prototype,"borderRadius",void 0),c([(0,r.MZ)()],p.prototype,"textVariant",void 0),p=c([(0,n.E)("wui-button")],p)},38542:(e,t,a)=>{var i=a(41270),r=a(12456);a(28009);var o=a(67998),n=a(45857);let s=(0,i.AH)` 676 :host { 677 display: inline-flex; 678 justify-content: center; 679 align-items: center; 680 position: relative; 681 overflow: hidden; 682 background-color: var(--wui-color-gray-glass-020); 683 border-radius: var(--local-border-radius); 684 border: var(--local-border); 685 box-sizing: content-box; 686 width: var(--local-size); 687 height: var(--local-size); 688 min-height: var(--local-size); 689 min-width: var(--local-size); 690 } 691 692 @supports (background: color-mix(in srgb, white 50%, black)) { 693 :host { 694 background-color: color-mix(in srgb, var(--local-bg-value) var(--local-bg-mix), transparent); 695 } 696 } 697`;var c=function(e,t,a,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(n=(o<3?r(n):o>3?r(t,a,n):r(t,a))||n);return o>3&&n&&Object.defineProperty(t,a,n),n};let l=class extends i.WF{constructor(){super(...arguments),this.size="md",this.backgroundColor="accent-100",this.iconColor="accent-100",this.background="transparent",this.border=!1,this.borderColor="wui-color-bg-125",this.icon="copy"}render(){let e=this.iconSize||this.size,t="lg"===this.size,a="xl"===this.size,r="gray"===this.background,o="opaque"===this.background,n="accent-100"===this.backgroundColor&&o||"success-100"===this.backgroundColor&&o||"error-100"===this.backgroundColor&&o||"inverse-100"===this.backgroundColor&&o,s=`var(--wui-color-${this.backgroundColor})`;return n?s=`var(--wui-icon-box-bg-${this.backgroundColor})`:r&&(s=`var(--wui-color-gray-${this.backgroundColor})`),this.style.cssText=` 698 --local-bg-value: ${s}; 699 --local-bg-mix: ${n||r?"100%":t?"12%":"16%"}; 700 --local-border-radius: var(--wui-border-radius-${t?"xxs":a?"s":"3xl"}); 701 --local-size: var(--wui-icon-box-size-${this.size}); 702 --local-border: ${"wui-color-bg-125"===this.borderColor?"2px":"1px"} solid ${this.border?`var(--${this.borderColor})`:"transparent"} 703 `,(0,i.qy)` <wui-icon color=${this.iconColor} size=${e} name=${this.icon}></wui-icon> `}};l.styles=[o.W5,o.fD,s],c([(0,r.MZ)()],l.prototype,"size",void 0),c([(0,r.MZ)()],l.prototype,"backgroundColor",void 0),c([(0,r.MZ)()],l.prototype,"iconColor",void 0),c([(0,r.MZ)()],l.prototype,"iconSize",void 0),c([(0,r.MZ)()],l.prototype,"background",void 0),c([(0,r.MZ)({type:Boolean})],l.prototype,"border",void 0),c([(0,r.MZ)()],l.prototype,"borderColor",void 0),c([(0,r.MZ)()],l.prototype,"icon",void 0),l=c([(0,n.E)("wui-icon-box")],l)},94441:(e,t,a)=>{var i=a(41270),r=a(12456);a(28009);var o=a(67998),n=a(45857);let s=(0,i.AH)` 704 button { 705 border-radius: var(--local-border-radius); 706 color: var(--wui-color-fg-100); 707 padding: var(--local-padding); 708 } 709 710 @media (max-width: 700px) { 711 :host(:not([size='sm'])) button { 712 padding: var(--wui-spacing-s); 713 } 714 } 715 716 button > wui-icon { 717 pointer-events: none; 718 } 719 720 button:disabled > wui-icon { 721 color: var(--wui-color-bg-300) !important; 722 } 723 724 button:disabled { 725 background-color: transparent; 726 } 727`;var c=function(e,t,a,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(n=(o<3?r(n):o>3?r(t,a,n):r(t,a))||n);return o>3&&n&&Object.defineProperty(t,a,n),n};let l=class extends i.WF{constructor(){super(...arguments),this.size="md",this.disabled=!1,this.icon="copy",this.iconColor="inherit"}render(){this.dataset.size=this.size;let e="",t="";switch(this.size){case"lg":e="--wui-border-radius-xs",t="--wui-spacing-1xs";break;case"sm":e="--wui-border-radius-3xs",t="--wui-spacing-xxs";break;default:e="--wui-border-radius-xxs",t="--wui-spacing-2xs"}return this.style.cssText=` 728 --local-border-radius: var(${e}); 729 --local-padding: var(${t}); 730 `,(0,i.qy)` 731 <button ?disabled=${this.disabled}> 732 <wui-icon color=${this.iconColor} size=${this.size} name=${this.icon}></wui-icon> 733 </button> 734 `}};l.styles=[o.W5,o.fD,o.ck,s],c([(0,r.MZ)()],l.prototype,"size",void 0),c([(0,r.MZ)({type:Boolean})],l.prototype,"disabled",void 0),c([(0,r.MZ)()],l.prototype,"icon",void 0),c([(0,r.MZ)()],l.prototype,"iconColor",void 0),l=c([(0,n.E)("wui-icon-link")],l)},83081:(e,t,a)=>{var i=a(41270),r=a(12456);let o=(0,i.JW)`<svg width="86" height="96" fill="none"> 735 <path 736 d="M78.3244 18.926L50.1808 2.45078C45.7376 -0.150261 40.2624 -0.150262 35.8192 2.45078L7.6756 18.926C3.23322 21.5266 0.5 26.3301 0.5 31.5248V64.4752C0.5 69.6699 3.23322 74.4734 7.6756 77.074L35.8192 93.5492C40.2624 96.1503 45.7376 96.1503 50.1808 93.5492L78.3244 77.074C82.7668 74.4734 85.5 69.6699 85.5 64.4752V31.5248C85.5 26.3301 82.7668 21.5266 78.3244 18.926Z" 737 /> 738</svg>`;var n=a(39211);let s=(0,i.JW)` 739 <svg fill="none" viewBox="0 0 36 40"> 740 <path 741 d="M15.4 2.1a5.21 5.21 0 0 1 5.2 0l11.61 6.7a5.21 5.21 0 0 1 2.61 4.52v13.4c0 1.87-1 3.59-2.6 4.52l-11.
74161 6.7c-1.62.93-3.6.93-5.22 0l-11.6-6.7a5.21 5.21 0 0 1-2.61-4.51v-13.4c0-1.87 1-3.6 2.6-4.52L15.4 2.1Z" 742 /> 743 </svg> 744`;a(28009),a(55602);var c=a(67998),l=a(45857);let u=(0,i.AH)` 745 :host { 746 position: relative; 747 border-radius: inherit; 748 display: flex; 749 justify-content: center; 750 align-items: center; 751 width: var(--local-width); 752 height: var(--local-height); 753 } 754 755 :host([data-round='true']) { 756 background: var(--wui-color-gray-glass-002); 757 border-radius: 100%; 758 outline: 1px solid var(--wui-color-gray-glass-005); 759 } 760 761 svg { 762 position: absolute; 763 top: 0; 764 left: 0; 765 width: 100%; 766 height: 100%; 767 z-index: 1; 768 fill: var(--wui-color-gray-glass-002); 769 } 770 771 svg > path { 772 stroke: var(--local-stroke); 773 } 774 775 wui-image { 776 width: 100%; 777 height: 100%; 778 -webkit-clip-path: var(--local-path); 779 clip-path: var(--local-path); 780 background: var(--wui-color-gray-glass-002); 781 } 782 783 wui-icon { 784 transform: translateY(-5%); 785 width: var(--local-icon-size); 786 height: var(--local-icon-size); 787 } 788`;var d=function(e,t,a,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(n=(o<3?r(n):o>3?r(t,a,n):r(t,a))||n);return o>3&&n&&Object.defineProperty(t,a,n),n};let p=class extends i.WF{constructor(){super(...arguments),this.size="md",this.name="uknown",this.networkImagesBySize={sm:s,md:n.a,lg:o},this.selected=!1,this.round=!1}render(){return this.round?(this.dataset.round="true",this.style.cssText=` 789 --local-width: var(--wui-spacing-3xl); 790 --local-height: var(--wui-spacing-3xl); 791 --local-icon-size: var(--wui-spacing-l); 792 `):this.style.cssText=` 793 794 --local-path: var(--wui-path-network-${this.size}); 795 --local-width: var(--wui-width-network-${this.size}); 796 --local-height: var(--wui-height-network-${this.size}); 797 --local-icon-size: var(--wui-icon-size-network-${this.size}); 798 `,(0,i.qy)`${this.templateVisual()} ${this.svgTemplate()} `}svgTemplate(){return this.round?null:this.networkImagesBySize[this.size]}templateVisual(){return this.imageSrc?(0,i.qy)`<wui-image src=${this.imageSrc} alt=${this.name}></wui-image>`:(0,i.qy)`<wui-icon size="inherit" color="fg-200" name="networkPlaceholder"></wui-icon>`}};p.styles=[c.W5,u],d([(0,r.MZ)()],p.prototype,"size",void 0),d([(0,r.MZ)()],p.prototype,"name",void 0),d([(0,r.MZ)({type:Object})],p.prototype,"networkImagesBySize",void 0),d([(0,r.MZ)()],p.prototype,"imageSrc",void 0),d([(0,r.MZ)({type:Boolean})],p.prototype,"selected",void 0),d([(0,r.MZ)({type:Boolean})],p.prototype,"round",void 0),p=d([(0,l.E)("wui-network-image")],p)},72190:(e,t,a)=>{var i=a(41270),r=a(12456);a(28009),a(55602),a(7202);var o=a(67998),n=a(45857);a(38542);let s=(0,i.AH)` 799 :host { 800 position: relative; 801 background-color: var(--wui-color-gray-glass-002); 802 display: flex; 803 justify-content: center; 804 align-items: center; 805 width: var(--local-size); 806 height: var(--local-size); 807 border-radius: inherit; 808 border-radius: var(--local-border-radius); 809 } 810 811 :host > wui-flex { 812 overflow: hidden; 813 border-radius: inherit; 814 border-radius: var(--local-border-radius); 815 } 816 817 :host::after { 818 content: ''; 819 position: absolute; 820 top: 0; 821 bottom: 0; 822 left: 0; 823 right: 0; 824 border-radius: inherit; 825 border: 1px solid var(--wui-color-gray-glass-010); 826 pointer-events: none; 827 } 828 829 :host([name='Extension'])::after { 830 border: 1px solid var(--wui-color-accent-glass-010); 831 } 832 833 :host([data-wallet-icon='allWallets']) { 834 background-color: var(--wui-all-wallets-bg-100); 835 } 836 837 :host([data-wallet-icon='allWallets'])::after { 838 border: 1px solid var(--wui-color-accent-glass-010); 839 } 840 841 wui-icon[data-parent-size='inherit'] { 842 width: 75%; 843 height: 75%; 844 align-items: center; 845 } 846 847 wui-icon[data-parent-size='sm'] { 848 width: 18px; 849 height: 18px; 850 } 851 852 wui-icon[data-parent-size='md'] { 853 width: 24px; 854 height: 24px; 855 } 856 857 wui-icon[data-parent-size='lg'] { 858 width: 42px; 859 height: 42px; 860 } 861 862 wui-icon[data-parent-size='full'] { 863 width: 100%; 864 height: 100%; 865 } 866 867 :host > wui-icon-box { 868 position: absolute; 869 overflow: hidden; 870 right: -1px; 871 bottom: -2px; 872 z-index: 1; 873 border: 2px solid var(--wui-color-bg-150, #1e1f1f); 874 padding: 1px; 875 } 876`;var c=function(e,t,a,i){var r,o=arguments.length,n=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,a):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,a,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(n=(o<3?r(n):o>3?r(t,a,n):r(t,a))||n);return o>3&&n&&Object.defineProperty(t,a,n),n};let l=class extends i.WF{constructor(){super(...arguments),this.size="md",this.name="",this.installed=!1,this.badgeSize="xs"}render(){let e="xxs";return e="lg"===this.size?"m":"md"===this.size?"xs":"xxs",this.style.cssText=` 877 --local-border-radius: var(--wui-border-radius-${e}); 878 --local-size: var(--wui-wallet-image-size-${this.size}); 879 `,this.walletIcon&&(this.dataset.walletIcon=this.walletIcon),(0,i.qy)` 880 <wui-flex justifyContent="center" alignItems="center"> ${this.templateVisual()} </wui-flex> 881 `}templateVisual(){return this.imageSrc?(0,i.qy)`<wui-image src=${this.imageSrc} alt=${this.name}></wui-image>`:this.walletIcon?(0,i.qy)`<wui-icon 882 data-parent-size="md" 883 size="md" 884 color="inherit" 885 name=${this.walletIcon} 886 ></wui-icon>`:(0,i.qy)`<wui-icon 887 data-parent-size=${this.size} 888 size="inherit" 889 color="inherit" 890 name="walletPlaceholder" 891 ></wui-icon>`}};l.styles=[o.fD,o.W5,s],c([(0,r.MZ)()],l.prototype,"size",void 0),c([(0,r.MZ)()],l.prototype,"name",void 0),c([(0,r.MZ)()],l.prototype,"imageSrc",void 0),c([(0,r.MZ)()],l.prototype,"walletIcon",void 0),c([(0,r.MZ)({type:Boolean})],l.prototype,"installed",void 0),c([(0,r.MZ)()],l.prototype,"badgeSize",void 0),l=c([(0,n.E)("wui-wallet-image")],l)}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.