@ic-pay/icpay-widget 1.2.114 → 1.2.119
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-RCWWBMN4.js → chunk-5Q7NK6EQ.js} +26 -26
- package/dist/{chunk-RCWWBMN4.js.map → chunk-5Q7NK6EQ.js.map} +1 -1
- package/dist/chunk-YNVNWF7W.js +2 -0
- package/dist/chunk-YNVNWF7W.js.map +1 -0
- package/dist/index.js +1 -1
- package/dist/react/index.js +1 -1
- package/dist/wallet-select-Y6Q7B7CJ.js +2 -0
- package/package.json +4 -4
- package/dist/chunk-QEOLHVOE.js +0 -2
- package/dist/chunk-QEOLHVOE.js.map +0 -1
- package/dist/wallet-select-VE5FSSFG.js +0 -2
- /package/dist/{wallet-select-VE5FSSFG.js.map → wallet-select-Y6Q7B7CJ.js.map} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{Actor as $t,HttpAgent as te}from"@dfinity/agent";import{Actor as zt}from"@dfinity/agent";var S=class{constructor(t){this.id="plug";this.label="Plug";this.icon=null;this._config=t.config||{},this._adapterCfg=t.adapter}async isInstalled(){return!!(typeof window<"u"&&window.ic&&window.ic.plug)}async isConnected(){try{return!!await window.ic?.plug?.isConnected?.()}catch{return!1}}async connect(){if(!await this.isInstalled())throw new Error("Plug is not installed");await this.isConnected()||await window.ic.plug.requestConnect?.({host:this._config.icHost});let e=await window.ic.plug.getPrincipal?.(),r=typeof e?.toText=="function"?e.toText():e?.toString?.()||null;return{owner:r,principal:r,connected:!0}}async disconnect(){try{await window.ic?.plug?.disconnect?.()}catch{}}async getPrincipal(){try{let t=await window.ic.plug.getPrincipal?.();return typeof t?.toText=="function"?t.toText():t?.toString?.()||null}catch{return null}}getActor(t){let e=window.ic?.plug?.agent;if(!e)throw new Error("Plug agent not initialized");return zt.createActor(t.idl,{agent:e,canisterId:t.canisterId})}};import{Actor as Lt,HttpAgent as Ct}from"@dfinity/agent";import{AuthClient as vt}from"@dfinity/auth-client";var E=class{constructor(t){this.id="ii";this.label="Internet Identity";this.icon=null;this._client=null;this._agent=null;this._config=t.config||{}}async client(){return this._client?this._client:(this._client=await vt.create(),this._client)}async isInstalled(){return!0}async isConnected(){return await(await this.client()).isAuthenticated()}async connect(){let t=await this.client();await t.isAuthenticated()||await t.login({identityProvider:this._config.derivationOrigin,maxTimeToLive:BigInt(10080*60*1e9)});let r=t.getIdentity();this._agent=new Ct({host:this._config.icHost,identity:r});let o=r.getPrincipal().toText();return{owner:o,principal:o,connected:!0}}async disconnect(){try{await(await this.client()).logout()}catch{}this._agent=null}async getPrincipal(){try{return(await this.client()).getIdentity().getPrincipal().toText()}catch{return null}}getActor(t){if(!this._agent)throw new Error("II agent not initialized");return Lt.createActor(t.idl,{agent:this._agent,canisterId:t.canisterId})}};import{Actor as bt,HttpAgent as xt}from"@dfinity/agent";import{PostMessageTransport as St}from"@slide-computer/signer-web";import{Signer as Et}from"@slide-computer/signer";import{SignerAgent as Ot}from"@slide-computer/signer-agent";var O=class{constructor(t){this.id="nfid";this.label="NFID";this.icon=null;this._agent=null;this._principal=null;this._config=t.config||{}}async isInstalled(){return!0}async isConnected(){return!!this._agent}async connect(){let e=(this._config?.adapters||{}).nfid?.config||{},r=e.signerUrl,o=e.hostUrl||this._config.icHost;if(!r)throw new Error("NFID signerUrl not configured");if(!o)throw new Error("IC host not configured");let i=new xt({host:o}),n=new St({url:r,...e.transport||{}}),c=new Et({transport:n});await c.openChannel();let M=(await c.accounts())?.[0]?.owner,d=await Ot.create({signer:c,agent:i,account:M}),p=null;try{p=(await d.getPrincipal())?.toText?.()||null}catch{}return this._agent=d,this._principal=p,{owner:p,principal:p,connected:!0}}async disconnect(){this._agent=null,this._principal=null}async getPrincipal(){return this._principal}getActor(t){if(!this._agent)throw new Error("NFID agent not initialized");return bt.createActor(t.idl,{agent:this._agent,canisterId:t.canisterId})}};import{Actor as Pt,HttpAgent as kt}from"@dfinity/agent";import{PostMessageTransport as Ut}from"@slide-computer/signer-web";import{Signer as Qt}from"@slide-computer/signer";import{SignerAgent as Wt}from"@slide-computer/signer-agent";var P=class{constructor(t){this.id="oisy";this.label="Oisy";this.icon=null;this._agent=null;this._principal=null;this._config=t.config||{}}async isInstalled(){return!0}async isConnected(){return!!this._agent}async connect(){let e=(this._config?.adapters||{}).oisy?.config||{},r=e.signerUrl,o=e.hostUrl||this._config.icHost,i=e.transport||{};if(!r)throw new Error("Oisy signerUrl not configured");if(!o)throw new Error("IC host not configured");let n=i.windowOpenerFeatures??"",c=new kt({host:o}),s=new Ut({url:r,windowOpenerFeatures:n,detectNonClickEstablishment:!1,...i}),M=new Qt({transport:s});await M.openChannel();let p=(await M.accounts())?.[0]?.owner,l=await Wt.create({signer:M,agent:c,account:p}),u=null;try{u=(await l.getPrincipal())?.toText?.()||null}catch{}return this._agent=l,this._principal=u,{owner:u,principal:u,connected:!0}}async disconnect(){this._agent=null,this._principal=null}async getPrincipal(){return this._principal}getActor(t){if(!this._agent)throw new Error("Oisy agent not initialized");return Pt.createActor(t.idl,{agent:this._agent,canisterId:t.canisterId})}};var k=class{constructor(t){this.id="metamask";this.label="MetaMask";this.config=t.config||{}}isMobileBrowser(){try{let t=typeof navigator<"u"?navigator:window?.navigator,e=String(t?.userAgent||"").toLowerCase();return/iphone|ipad|ipod|android|mobile|windows phone/.test(e)}catch{return!1}}getProvider(){try{let e=(typeof window<"u"?window:{}).ethereum;if(e&&Array.isArray(e.providers)){let r=e.providers.find(o=>o&&o.isMetaMask);if(r)return r}if(e&&e.isMetaMask||this.isMobileBrowser()&&e&&typeof e.request=="function")return e}catch{}return null}getEvmProvider(){return this.getProvider()}async isInstalled(){try{return!!this.getProvider()}catch{return!1}}async isConnected(){try{let t=this.getProvider();if(!t)return!1;let r=await(typeof t.request=="function"?t.request({method:"eth_accounts"}):Promise.resolve([]));return Array.isArray(r)&&r.length>0}catch{return!1}}async connect(){let t=this.getProvider();if(!t){if(typeof window<"u"&&this.isMobileBrowser()){try{let s=`https://metamask.app.link/dapp/${String(window.location?.href||"").replace(/^https?:\/\//i,"")}`;try{try{window.dispatchEvent(new CustomEvent("icpay-sdk-wallet-deeplink",{detail:{wallet:"metamask",url:s}}))}catch{}window.location.href=s}catch{try{window.open(s,"_self","noopener,noreferrer")}catch{}}}catch{}throw new Error("Opening MetaMask\u2026 If nothing happens, install MetaMask and try again.")}throw new Error("MetaMask not available")}let e=n=>new Promise(c=>setTimeout(c,n)),r=async()=>{try{let n=await t.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0)return n}catch{}try{let n=await t.request?.({method:"eth_requestAccounts"});if(Array.isArray(n)&&n.length>0)return n}catch(n){if(n&&(n.code===4001||n.code==="4001"))throw new Error("Connection request was rejected")}try{await t.request?.({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]});let n=await t.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0)return n}catch{}return[]},o=[];for(let n=0;n<3&&o.length===0;n++)t=this.getProvider()||t,o=await r(),o.length===0&&await e(300);let i=Array.isArray(o)&&o[0]||"";if(!i)throw new Error("No account returned by MetaMask");return{owner:i,principal:i,connected:!0}}async disconnect(){try{let t=this.getProvider()||(typeof window<"u"?window.ethereum:null);if(!t)return;try{await t.request?.({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]})}catch{}try{t.removeAllListeners?.("accountsChanged")}catch{}try{t.removeAllListeners?.("chainChanged")}catch{}try{t.removeAllListeners?.("disconnect")}catch{}}catch{}}async getPrincipal(){try{let t=this.getProvider()||(typeof window<"u"?window.ethereum:null);if(!t)return null;let e=await t.request?.({method:"eth_accounts"});return Array.isArray(e)&&e[0]||""||null}catch{return null}}getActor(t){throw new Error("EVM wallets cannot provide IC actors. Use IC adapters for IC canister interactions.")}};var _="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAzNTguOCAxNzkuOCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzU4LjggMTc5Ljg7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDp1cmwoI1NWR0lEXzFfKTt9Cgkuc3Qxe2ZpbGw6dXJsKCNTVkdJRF8yXyk7fQoJLnN0MntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiMyOUFCRTI7fQo8L3N0eWxlPgo8bGluZWFyR3JhZGllbnQgaWQ9IlNWR0lEXzFfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjIyNC43ODUzIiB5MT0iMjU3Ljc1MzYiIHgyPSIzNDguMDY2MyIgeTI9IjEzMy40NTgxIiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIC0xIDAgMjcyKSI+Cgk8c3RvcCAgb2Zmc2V0PSIwLjIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRjE1QTI0Ii8+Cgk8c3RvcCAgb2Zmc2V0PSIwLjY4NDEiIHN0eWxlPSJzdG9wLWNvbG9yOiNGQkIwM0IiLz4KPC9saW5lYXJHcmFkaWVudD4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTI3MS42LDBjLTIwLDAtNDEuOSwxMC45LTY1LDMyLjRjLTEwLjksMTAuMS0yMC41LDIxLjEtMjcuNSwyOS44YzAsMCwxMS4yLDEyLjksMjMuNSwyNi44CgljNi43LTguNCwxNi4yLTE5LjgsMjcuMy0zMC4xYzIwLjUtMTkuMiwzMy45LTIzLjEsNDEuNi0yMy4xYzI4LjgsMCw1Mi4yLDI0LjIsNTIuMiw1NC4xYzAsMjkuNi0yMy40LDUzLjgtNTIuMiw1NC4xCgljLTEuNCwwLTMtMC4yLTUtMC42YzguNCwzLjksMTcuNSw2LjcsMjYsNi43YzUyLjgsMCw2My4yLTM2LjUsNjMuOC0zOS4xYzEuNS02LjcsMi40LTEzLjcsMi40LTIwLjlDMzU4LjYsNDAuNCwzMTkuNiwwLDI3MS42LDB6Ii8+CjxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHSURfMl8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iMTMzLjk0NjEiIHkxPSIxMDYuNDI2MiIgeDI9IjEwLjY2NTMiIHkyPSIyMzAuNzIxNSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgxIDAgMCAtMSAwIDI3MikiPgoJPHN0b3AgIG9mZnNldD0iMC4yMSIgc3R5bGU9InN0b3AtY29sb3I6I0VEMUU3OSIvPgoJPHN0b3AgIG9mZnNldD0iMC44OTI5IiBzdHlsZT0ic3RvcC1jb2xvcjojNTIyNzg1Ii8+CjwvbGluZWFyR3JhZGllbnQ+CjxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik04Ny4xLDE3OS44YzIwLDAsNDEuOS0xMC45LDY1LTMyLjRjMTAuOS0xMC4xLDIwLjUtMjEuMSwyNy41LTI5LjhjMCwwLTExLjItMTIuOS0yMy41LTI2LjgKCWMtNi43LDguNC0xNi4yLDE5LjgtMjcuMywzMC4xYy0yMC41LDE5LTM0LDIzLjEtNDEuNiwyMy4xYy0yOC44LDAtNTIuMi0yNC4yLTUyLjItNTQuMWMwLTI5LjYsMjMuNC01My44LDUyLjItNTQuMQoJYzEuNCwwLDMsMC4yLDUsMC42Yy04LjQtMy45LTE3LjUtNi43LTI2LTYuN0MxMy40LDI5LjYsMyw2Ni4xLDIuNCw2OC44QzAuOSw3NS41LDAsODIuNSwwLDg5LjdDMCwxMzkuNCwzOSwxNzkuOCw4Ny4xLDE3OS44eiIvPgo8cGF0aCBjbGFzcz0ic3QyIiBkPSJNMTI3LjMsNTkuN2MtNS44LTUuNi0zNC0yOC41LTYxLTI5LjNDMTguMSwyOS4yLDQsNjQuMiwyLjcsNjguN0MxMiwyOS41LDQ2LjQsMC4yLDg3LjIsMAoJYzMzLjMsMCw2NywzMi43LDkxLjksNjIuMmMwLDAsMC4xLTAuMSwwLjEtMC4xYzAsMCwxMS4yLDEyLjksMjMuNSwyNi44YzAsMCwxNCwxNi41LDI4LjgsMzFjNS44LDUuNiwzMy45LDI4LjIsNjAuOSwyOQoJYzQ5LjUsMS40LDYzLjItMzUuNiw2My45LTM4LjRjLTkuMSwzOS41LTQzLjYsNjguOS04NC42LDY5LjFjLTMzLjMsMC02Ny0zMi43LTkyLTYyLjJjMCwwLjEtMC4xLDAuMS0wLjEsMC4yCgljMCwwLTExLjItMTIuOS0yMy41LTI2LjhDMTU2LjIsOTAuOCwxNDIuMiw3NC4yLDEyNy4zLDU5Ljd6IE0yLjcsNjkuMWMwLTAuMSwwLTAuMiwwLjEtMC4zQzIuNyw2OC45LDIuNyw2OSwyLjcsNjkuMXoiLz4KPC9zdmc+Cg==";var $="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjQiIGhlaWdodD0iNjQiIHZpZXdCb3g9IjAgMCA2NCA2NCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNS45MDIyIDMuMTU2MjlDMTYuNzcxNCAzLjA2MzYzIDE3LjQwMDggMi4yODM5OCAxNy4zMDgxIDEuNDE0ODlDMTcuMjE1NSAwLjU0NTgwOSAxNi40MzU4IC0wLjA4MzYwOTkgMTUuNTY2NyAwLjAwOTA0OTQ2TDEyLjMzNDUgMC4zNTM2MzNDMTAuNjc4NiAwLjUzMDE2NSA5LjM1MDQ2IDAuNjcxNzUxIDguMjcxOCAwLjg2NzMwNkM3LjE2MDYgMS4wNjg3NiA2LjIwODI3IDEuMzQ0MTQgNS4zMjM3OCAxLjgzOTgxQzMuODg3NzMgMi42NDQ1NyAyLjY5NzE5IDMuODIzODUgMS44Nzk0NCA1LjI1MTk2QzEuMzc1NjggNi4xMzE3MyAxLjA5MjA0IDcuMDgxMTIgMC44ODExODUgOC4xODk2MUMwLjY3NjUzNSA5LjI2NTQ5IDAuNTIzODkzIDEwLjU5MSAwLjMzMzYyMSAxMi4yNDMyTDAuMzI1NDI0IDEyLjMxNDRMMC4wMDgwNjAwNiAxNS40NzA0Qy0wLjA3OTM4NzUgMTYuMzQgMC41NTQ3MjYgMTcuMTE1OSAxLjQyNDM5IDE3LjIwMzRDMi4yOTQwNiAxNy4yOTA4IDMuMDY5OTUgMTYuNjU2NyAzLjE1NzQgMTUuNzg3MUwzLjQ3MjQ4IDEyLjY1MzhDMy42NzA1NCAxMC45MzQgMy44MTA2NiA5LjcyNzMgMy45OTA2NiA4Ljc4MTAzQzQuMTY3MzEgNy44NTIzNSA0LjM2NDQ5IDcuMjgxODEgNC42MjYyNiA2LjgyNDY3QzUuMTU5MDEgNS44OTQyNyA1LjkzNDg3IDUuMTI1NTkgNi44NzEyMSA0LjYwMDg2QzcuMzMxNTEgNC4zNDI5MSA3LjkwNDg2IDQuMTUwNTEgOC44MzY0NiAzLjk4MTYxQzkuNzg3NjYgMy44MDkxNiAxMS4wMDA1IDMuNjc4ODggMTIuNzI5OSAzLjQ5NDVMMTUuOTAyMiAzLjE1NjI5Wk00Ni42OTE5IDEuNDE0ODlDNDYuNTk5MiAyLjI4Mzk4IDQ3LjIyODYgMy4wNjM2MyA0OC4wOTc4IDMuMTU2MjlMNTEuMjcwMSAzLjQ5NDVDNTIuOTk5NSAzLjY3ODg4IDU0LjIxMjMgMy44MDkxNiA1NS4xNjM1IDMuOTgxNjFDNTYuMDk1MSA0LjE1MDUxIDU2LjY2ODUgNC4zNDI5MSA1Ny4xMjg4IDQuNjAwODZDNTguMDY1MSA1LjEyNTU5IDU4Ljg0MSA1Ljg5NDI3IDU5LjM3MzcgNi44MjQ2N0M1OS42MzU1IDcuMjgxODEgNTkuODMyNyA3Ljg1MjM1IDYwLjAwOTMgOC43ODEwM0M2MC4xODkzIDkuNzI3MyA2MC4zMjk1IDEwLjkzNCA2MC41Mjc1IDEyLjY1MzhMNjAuODQyNiAxNS43ODcxQzYwLjkzIDE2LjY1NjcgNjEuNzA1OSAxNy4yOTA4IDYyLjU3NTYgMTcuMjAzNEM2My40NDUzIDE3LjExNTkgNjQuMDc5NCAxNi4zNCA2My45OTE5IDE1LjQ3MDRMNjMuNjc0NiAxMi4zMTQ0TDYzLjY2NjQgMTIuMjQzMkM2My40NzYxIDEwLjU5MSA2My4zMjM1IDkuMjY1NDkgNjMuMTE4OCA4LjE4OTYxQzYyLjkwOCA3LjA4MTEyIDYyLjYyNDMgNi4xMzE3MyA2Mi4xMjA2IDUuMjUxOTZDNjEuMzAyOCAzLjgyMzg1IDYwLjExMjMgMi42NDQ1NyA1OC42NzYyIDEuODM5ODFDNTcuNzkxNyAxLjM0NDE0IDU2LjgzOTQgMS4wNjg3NiA1NS43MjgyIDAuODY3MzA2QzU0LjY0OTUgMC42NzE3NTEgNTMuMzIxNCAwLjUzMDE2NSA1MS42NjU1IDAuMzUzNjMzTDQ4LjQzMzMgMC4wMDkwNDk0NkM0Ny41NjQyIC0wLjA4MzYwOTkgNDYuNzg0NSAwLjU0NTgwOSA0Ni42OTE5IDEuNDE0ODlaTTQ2LjY5MTkgNjIuNTg1MUM0Ni41OTkyIDYxLjcxNiA0Ny4yMjg2IDYwLjkzNjQgNDguMDk3OCA2MC44NDM3TDUxLjI3MDEgNjAuNTA1NUM1Mi45OTk1IDYwLjMyMTEgNTQuMjEyMyA2MC4xOTA4IDU1LjE2MzUgNjAuMDE4NEM1Ni4wOTUxIDU5Ljg0OTUgNTYuNjY4NSA1OS42NTcxIDU3LjEyODggNTkuMzk5MUM1OC4wNjUxIDU4Ljg3NDQgNTguODQxIDU4LjEwNTcgNTkuMzczNyA1Ny4xNzUzQzU5LjYzNTUgNTYuNzE4MiA1OS44MzI3IDU2LjE0NzYgNjAuMDA5MyA1NS4yMTlDNjAuMTg5MyA1NC4yNzI3IDYwLjMyOTUgNTMuMDY2IDYwLjUyNzUgNTEuMzQ2Mkw2MC44NDI2IDQ4LjIxMjlDNjAuOTMgNDcuMzQzMyA2MS43MDU5IDQ2LjcwOTIgNjIuNTc1NiA0Ni43OTY2QzYzLjQ0NTMgNDYuODg0MSA2NC4wNzk0IDQ3LjY2IDYzLjk5MTkgNDguNTI5Nkw2My42NzQ2IDUxLjY4NTZMNjMuNjY2NCA1MS43NTY4QzYzLjQ3NjEgNTMuNDA5IDYzLjMyMzUgNTQuNzM0NSA2My4xMTg4IDU1LjgxMDRDNjIuOTA4IDU2LjkxODkgNjIuNjI0MyA1Ny44NjgzIDYyLjEyMDYgNTguNzQ4QzYxLjMwMjggNjAuMTc2MiA2MC4xMTIzIDYxLjM1NTQgNTguNjc2MiA2Mi4xNjAyQzU3Ljc5MTcgNjIuNjU1OSA1Ni44Mzk0IDYyLjkzMTIgNTUuNzI4MiA2My4xMzI3QzU0LjY0OTYgNjMuMzI4MiA1My4zMjE2IDYzLjQ2OTggNTEuNjY1OCA2My42NDYzTDUxLjY2NTYgNjMuNjQ2M0w1MS42NjU1IDYzLjY0NjRMNTEuNjY1NSA2My42NDY0TDQ4LjQzMzMgNjMuOTkxQzQ3LjU2NDIgNjQuMDgzNiA0Ni43ODQ1IDYzLjQ1NDIgNDYuNjkxOSA2Mi41ODUxWk0xNy4zMDgxIDYyLjU4NTZDMTcuNDAwOCA2MS43MTY1IDE2Ljc3MTQgNjAuOTM2OSAxNS45MDIyIDYwLjg0NDJMMTIuNzI5OSA2MC41MDZDMTEuMDAwNSA2MC4zMjE2IDkuNzg3NjYgNjAuMTkxMyA4LjgzNjQ2IDYwLjAxODlDNy45MDQ4NiA1OS44NSA3LjMzMTUxIDU5LjY1NzYgNi44NzEyMSA1OS4zOTk2QzUuOTM0ODcgNTguODc0OSA1LjE1OTAxIDU4LjEwNjIgNC42MjYyNiA1Ny4xNzU4QzQuMzY0NDkgNTYuNzE4NyA0LjE2NzMxIDU2LjE0ODEgMy45OTA2NiA1NS4yMTk1QzMuODEwNjYgNTQuMjczMiAzLjY3MDU0IDUzLjA2NjUgMy40NzI0OCA1MS4zNDY3TDMuMTU3NCA0OC4yMTM0QzMuMDY5OTUgNDcuMzQzOCAyLjI5NDA2IDQ2LjcwOTcgMS40MjQzOSA0Ni43OTcxQzAuNTU0NzI2IDQ2Ljg4NDYgLTAuMDc5Mzg3NSA0Ny42NjA0IDAuMDA4MDYwMDYgNDguNTMwMUwwLjMyNTQyNCA1MS42ODYxTDAuMzMzNjIxIDUxLjc1NzNDMC41MjM4OTMgNTMuNDA5NSAwLjY3NjUzNSA1NC43MzUgMC44ODExODUgNTUuODEwOUMxLjA5MjA0IDU2LjkxOTQgMS4zNzU2OCA1Ny44Njg4IDEuODc5NDQgNTguNzQ4NUMyLjY5NzE5IDYwLjE3NjYgMy44ODc3MyA2MS4zNTU5IDUuMzIzNzggNjIuMTYwN0M2LjIwODI3IDYyLjY1NjMgNy4xNjA2IDYyLjkzMTcgOC4yNzE4IDYzLjEzMzJDOS4zNTA0NCA2My4zMjg3IDEwLjY3ODYgNjMuNDcwMyAxMi4zMzQ1IDYzLjY0NjhMMTIuMzM0NSA2My42NDY5TDE1LjU2NjcgNjMuOTkxNEMxNi40MzU4IDY0LjA4NDEgMTcuMjE1NSA2My40NTQ3IDE3LjMwODEgNjIuNTg1NlpNMTYuNDUxMiAxOS43OTU0QzE1LjY5NTUgMTkuNzk1NCAxNS4wODI4IDIwLjQwODEgMTUuMDgyOCAyMS4xNjM4VjQzLjI5NzJDMTUuMDgyOCA0NC4wNTMgMTUuNjk1NSA0NC42NjU2IDE2LjQ1MTIgNDQuNjY1NkgyMC43NDk0QzIxLjUwNTIgNDQuNjY1NiAyMi4xMTc4IDQ0LjA1MyAyMi4xMTc4IDQzLjI5NzJWMjEuMTYzOEMyMi4xMTc4IDIwLjQwODEgMjEuNTA1MiAxOS43OTU0IDIwLjc0OTQgMTkuNzk1NEgxNi40NTEyWk0yOC4xMDgyIDE5Ljc5NTRDMjcuMzUyNSAxOS43OTU0IDI2LjczOTggMjAuNDA4MSAyNi43Mzk4IDIxLjE2MzhWNDMuMjk3MkMyNi43Mzk4IDQ0LjA1MyAyNy4zNTI1IDQ0LjY2NTYgMjguMTA4MiA0NC42NjU2SDM4LjUwMDRDNDEuMjI0NCA0NC42NjU2IDQzLjY0MDUgNDQuMTU2NCA0NS43NDg3IDQzLjEzNzlDNDcuODU2OCA0Mi4xMTk0IDQ5LjQ5MTIgNDAuNjc0NiA1MC42NTE5IDM4LjgwMzRDNTEuODEyNSAzNi45MzIyIDUyLjM5MjkgMzQuNzQxMiA1Mi4zOTI5IDMyLjIzMDVDNTIuMzkyOSAyOS43MTk4IDUxLjgxMjUgMjcuNTI4OSA1MC42NTE5IDI1LjY1NzdDNDkuNDkxMiAyMy43ODY1IDQ3Ljg1NjggMjIuMzQxNyA0NS43NDg3IDIxLjMyMzJDNDMuNjQwNSAyMC4zMDQ3IDQxLjIyNDQgMTkuNzk1NCAzOC41MDA0IDE5Ljc5NTRIMjguMTA4MlpNNDMuMzMyNiAzNy4yNDAxQzQyLjA1MzUgMzguNDQ4MSA0MC4zNDggMzkuMDUyMSAzOC4yMTYyIDM5LjA1MjFIMzQuMTg1NEMzMy45NTg3IDM5LjA1MjEgMzMuNzc0OSAzOC44NjgzIDMzLjc3NDkgMzguNjQxNlYyNS44MTk1QzMzLjc3NDkgMjUuNTkyOCAzMy45NTg3IDI1LjQwOSAzNC4xODU0IDI1LjQwOUgzOC4yMTYyQzQwLjM0OCAyNS40MDkgNDIuMDUzNSAyNi4wMTMgNDMuMzMyNiAyNy4yMjFDNDQuNjM1NCAyOC40Mjg5IDQ1LjI4NjggMzAuMDk4OCA0NS4yODY4IDMyLjIzMDVDNDUuMjg2OCAzNC4zNjIzIDQ0LjYzNTQgMzYuMDMyMSA0My4zMzI2IDM3LjI0MDFaIiBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXJfODAzODBfNTQpIi8+CjxkZWZzPgo8bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MF9saW5lYXJfODAzODBfNTQiIHgxPSIwLjc2NTgxMiIgeTE9Ii0yLjcwNDk2ZS0wNyIgeDI9IjYzLjU0MTciIHkyPSI2NC4yNzkzIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CjxzdG9wIHN0b3AtY29sb3I9IiMwMEE2OTUiLz4KPHN0b3Agb2Zmc2V0PSIwLjUiIHN0b3AtY29sb3I9IiMwMTg0NzciLz4KPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMDA2RjY0Ii8+CjwvbGluZWFyR3JhZGllbnQ+CjwvZGVmcz4KPC9zdmc+Cg==";var tt="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDQiIGhlaWdodD0iNDQiIHZpZXdCb3g9IjAgMCA0NCA0NCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iMjIiIGN5PSIyMiIgcj0iMjIiIGZpbGw9IiMwMDY2RkYiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yNC40MTIgMzMuNDE5M0wyMy44ODI3IDM1Ljc2MDNDMjMuODAzNyAzNi4xMDk5IDIzLjQ2OTMgMzYuMzQwNSAyMy4xMTUyIDM2LjI4NThDMjIuMzA4IDM2LjE2MSAyMS40OSAzNi4wMTc3IDIwLjY2MzcgMzUuODU5NEMyMC4yODQyIDM1Ljc4NjcgMjAuMDQyMyAzNS40MTMzIDIwLjEyNzUgMzUuMDM2NUwyMC42MDY3IDMyLjkxN0MyMC4yNzExIDMyLjg1MTMgMTkuOTMzNCAzMi43ODAyIDE5LjU5NCAzMi43MDQyQzE5LjI4OCAzMi42MzQ0IDE4Ljk4NSAzMi41NjE1IDE4LjY4NTQgMzIuNDg1NUwxOC4yMDY0IDM0LjYwNDRDMTguMTIxMiAzNC45ODEgMTcuNzQyNiAzNS4yMTQgMTcuMzY4OSAzNS4xMTY4QzE2LjU1NDggMzQuOTA1IDE1Ljc1NDcgMzQuNjgzNiAxNC45NzIzIDM0LjQ1MDRDMTQuNjI4NCAzNC4zNDc5IDE0LjQyNTEgMzMuOTk1NSAxNC41MDQzIDMzLjY0NTVMMTUuMDMwOCAzMS4zMTY0QzkuODI2OTUgMjkuMjI5NyA2LjU0MTYxIDI1LjY4MyA3LjkzNjAzIDE5LjYyNjJMOC4yNzE1NiAxOC4xNDIxQzkuNjIwOTQgMTIuMDYyNiAxNC4xMTA5IDEwLjI4MTEgMTkuNzA1NiAxMC42MzkzTDIwLjIzMTggOC4zMTE3N0MyMC4zMTA5IDcuOTYxNzMgMjAuNjQ2IDcuNzMxMDUgMjEuMDAwNiA3Ljc4NjQ1QzIxLjgwNzIgNy45MTI0OSAyMi42MjQ3IDguMDU2ODMgMjMuNDUwNyA4LjIxNTkyQzIzLjgyOTkgOC4yODg5NSAyNC4wNzE0IDguNjYyMTMgMjMuOTg2MyA5LjAzODc1TDIzLjUwNzMgMTEuMTU3NUMyMy44MTA0IDExLjIxNzkgMjQuMTE1MyAxMS4yODI0IDI0LjQyMTUgMTEuMzUxMUMyNC43NjA5IDExLjQyNzggMjUuMDk2NSAxMS41MDgzIDI1LjQyNzcgMTEuNTkyN0wyNS45MDY1IDkuNDc1MUMyNS45OTE3IDkuMDk4MjYgMjYuMzcwNyA4Ljg2NTI4IDI2Ljc0NDUgOC45NjI4OUMyNy41NTg2IDkuMTc1NDQgMjguMzU4NiA5LjM5Nzg4IDI5LjE0MSA5LjYzMjQxQzI5LjQ4NDMgOS43MzUzNCAyOS42ODY5IDEwLjA4NzQgMjkuNjA3OSAxMC40MzdMMjkuMDgwMSAxMi43NzE3QzM0LjIxNjEgMTQuODU4IDM3LjQyNjEgMTguNDAyIDM2LjA2NDMgMjQuNDI1NkwzNS43Mjg4IDI1LjkwOTdDMzQuMzkwOSAzMS45Mzc2IDI5Ljk0OTIgMzMuNzQyMSAyNC40MTIgMzMuNDE5M1pNMzEuOTYyOSAyNC43MDM5TDMyLjE1MTcgMjMuODY4N0MzMy40ODE0IDE4LjM0MzQgMjkuMDYwMSAxNi4yNzk3IDIzLjYwOTQgMTQuOTY3NkMxOC4wOTg4IDEzLjgwMTUgMTMuMjE5NiAxMy43NjI2IDEyLjA0MzIgMTkuMzIyNkwxMS44NTQ0IDIwLjE1NzhDMTAuNTE4OSAyNS43MDg0IDE0Ljk0MDMgMjcuNzcyMSAyMC40MTY1IDI5LjA5QzI1LjkwMTYgMzAuMjUwMyAzMC43ODA3IDMwLjI4OTMgMzEuOTYyOSAyNC43MDM5WiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+Cg==";var et="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAF1GlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgOS4xLWMwMDMgNzkuOTY5MGE4N2ZjLCAyMDI1LzAzLzA2LTIwOjUwOjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjYuMTEgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDI1LTExLTE2VDAxOjA1OjMxKzAxOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyNS0xMS0xNlQwMTowNzoxNSswMTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyNS0xMS0xNlQwMTowNzoxNSswMTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NjM3ZmUzMDEtMjdjNC00ZWJlLTgxZGQtMWJhYjk2NGE5MzllIiB4bXBNTTpEb2N1bWVu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";var nt="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzUiIGhlaWdodD0iMzQiIHZpZXdCb3g9IjAgMCAzNSAzNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTMyLjcwNzcgMzIuNzUyMkwyNS4xNjg4IDMwLjUxNzRMMTkuNDgzMyAzMy45MDA4TDE1LjUxNjcgMzMuODk5MUw5LjgyNzkzIDMwLjUxNzRMMi4yOTIyNSAzMi43NTIyTDAgMjUuMDQ4OUwyLjI5MjI1IDE2LjQ5OTNMMCA5LjI3MDk0TDIuMjkyMjUgMC4zMTIyNTZMMTQuMDY3NCA3LjMxNTU0SDIwLjkzMjZMMzIuNzA3NyAwLjMxMjI1NkwzNSA5LjI3MDk0TDMyLjcwNzcgMTYuNDk5M0wzNSAyNS4wNDg5TDMyLjcwNzcgMzIuNzUyMloiIGZpbGw9IiNGRjVDMTYiLz4KPHBhdGggZD0iTTIuMjkzOTUgMC4zMTIyNTZMMTQuMDY5MSA3LjMyMDQ3TDEzLjYwMDggMTIuMTMwMUwyLjI5Mzk1IDAuMzEyMjU2WiIgZmlsbD0iI0ZGNUMxNiIvPgo8cGF0aCBkPSJNOS44Mjk1OSAyNS4wNTIyTDE1LjAxMDYgMjguOTgxMUw5LjgyOTU5IDMwLjUxNzVWMjUuMDUyMloiIGZpbGw9IiNGRjVDMTYiLz4KPHBhdGggZD0iTTE0LjU5NjYgMTguNTU2NUwxMy42MDA5IDEyLjEzMzNMNy4yMjY5MiAxNi41MDA5TDcuMjIzNjMgMTYuNDk5M1YxNi41MDI1TDcuMjQzMzUgMjAuOTk4M0w5LjgyODA5IDE4LjU1NjVIOS44Mjk3NEgxNC41OTY2WiIgZmlsbD0iI0ZGNUMxNiIvPgo8cGF0aCBkPSJNMzIuNzA3NyAwLjMxMjI1NkwyMC45MzI2IDcuMzIwNDdMMjEuMzk5MyAxMi4xMzAxTDMyLjcwNzcgMC4zMTIyNTZaIiBmaWxsPSIjRkY1QzE2Ii8+CjxwYXRoIGQ9Ik0yNS4xNzIyIDI1LjA1MjJMMTkuOTkxMiAyOC45ODExTDI1LjE3MjIgMzAuNTE3NVYyNS4wNTIyWiIgZmlsbD0iI0ZGNUMxNiIvPgo8cGF0aCBkPSJNMjcuNzc2NiAxNi41MDI1SDI3Ljc3ODNIMjcuNzc2NlYxNi40OTkzTDI3Ljc3NSAxNi41MDA5TDIxLjQwMSAxMi4xMzMzTDIwLjQwNTMgMTguNTU2NUgyNS4xNzIyTDI3Ljc1ODYgMjAuOTk4M0wyNy43NzY2IDE2LjUwMjVaIiBmaWxsPSIjRkY1QzE2Ii8+CjxwYXRoIGQ9Ik05LjgyNzkzIDMwLjUxNzVMMi4yOTIyNSAzMi43NTIyTDAgMjUuMDUyMkg5LjgyNzkzVjMwLjUxNzVaIiBmaWxsPSIjRTM0ODA3Ii8+CjxwYXRoIGQ9Ik0xNC41OTQ3IDE4LjU1NDlMMTYuMDM0MSAyNy44NDA2TDE0LjAzOTMgMjIuNjc3N0w3LjIzOTc1IDIwLjk5ODRMOS44MjYxMyAxOC41NTQ5SDE0LjU5M0gxNC41OTQ3WiIgZmlsbD0iI0UzNDgwNyIvPgo8cGF0aCBkPSJNMjUuMTcyMSAzMC41MTc1TDMyLjcwNzggMzIuNzUyMkwzNS4wMDAxIDI1LjA1MjJIMjUuMTcyMVYzMC41MTc1WiIgZmlsbD0iI0UzNDgwNyIvPgo8cGF0aCBkPSJNMjAuNDA1MyAxOC41NTQ5TDE4Ljk2NTggMjcuODQwNkwyMC45NjA3IDIyLjY3NzdMMjcuNzYwMiAyMC45OTg0TDI1LjE3MjIgMTguNTU0OUgyMC40MDUzWiIgZmlsbD0iI0UzNDgwNyIvPgo8cGF0aCBkPSJNMCAyNS4wNDg4TDIuMjkyMjUgMTYuNDk5M0g3LjIyMTgzTDcuMjM5OTEgMjAuOTk2N0wxNC4wMzk0IDIyLjY3NkwxNi4wMzQzIDI3LjgzODlMMTUuMDA4OSAyOC45NzZMOS44Mjc5MyAyNS4wNDcySDBWMjUuMDQ4OFoiIGZpbGw9IiNGRjhENUQiLz4KPHBhdGggZD0iTTM1LjAwMDEgMjUuMDQ4OEwzMi43MDc4IDE2LjQ5OTNIMjcuNzc4M0wyNy43NjAyIDIwLjk5NjdMMjAuOTYwNyAyMi42NzZMMTguOTY1OCAyNy44Mzg5TDE5Ljk5MTIgMjguOTc2TDI1LjE3MjIgMjUuMDQ3MkgzNS4wMDAxVjI1LjA0ODhaIiBmaWxsPSIjRkY4RDVEIi8+CjxwYXRoIGQ9Ik0yMC45MzI1IDcuMzE1NDNIMTcuNDk5OUgxNC4wNjczTDEzLjYwMDYgMTIuMTI1MUwxNi4wMzQyIDI3LjgzNEgxOC45NjU2TDIxLjQwMDggMTIuMTI1MUwyMC45MzI1IDcuMzE1NDNaIiBmaWxsPSIjRkY4RDVEIi8+CjxwYXRoIGQ9Ik0yLjI5MjI1IDAuMzEyMjU2TDAgOS4yNzA5NEwyLjI5MjI1IDE2LjQ5OTNINy4yMjE4M0wxMy41OTkxIDEyLjEzMDFMMi4yOTIyNSAwLjMxMjI1NloiIGZpbGw9IiM2NjE4MDAiLz4KPHBhdGggZD0iTTEzLjE3IDIwLjQxOTlIMTAuOTM2OUw5LjcyMDk1IDIxLjYwNjJMMTQuMDQwOSAyMi42NzI3TDEzLjE3IDIwLjQxODJWMjAuNDE5OVoiIGZpbGw9IiM2NjE4MDAiLz4KPHBhdGggZD0iTTMyLjcwNzcgMC4zMTIyNTZMMzQuOTk5OSA5LjI3MDk0TDMyLjcwNzcgMTYuNDk5M0gyNy43NzgxTDIxLjQwMDkgMTIuMTMwMUwzMi43MDc3IDAuMzEyMjU2WiIgZmlsbD0iIzY2MTgwMCIvPgo8cGF0aCBkPSJNMjEuODMzIDIwLjQxOTlIMjQuMDY5NEwyNS4yODUzIDIxLjYwNzlMMjAuOTYwNCAyMi42NzZMMjEuODMzIDIwLjQxODJWMjAuNDE5OVoiIGZpbGw9IiM2NjE4MDAiLz4KPHBhdGggZD0iTTE5LjQ4MTcgMzAuODM2MkwxOS45OTExIDI4Ljk3OTRMMTguOTY1OCAyNy44NDIzSDE2LjAzMjdMMTUuMDA3MyAyOC45Nzk0TDE1LjUxNjcgMzAuODM2MiIgZmlsbD0iIzY2MTgwMCIvPgo8cGF0aCBkPSJNMTkuNDgxNiAzMC44MzU5VjMzLjkwMjFIMTUuNTE2NlYzMC44MzU5SDE5LjQ4MTZaIiBmaWxsPSIjQzBDNENEIi8+CjxwYXRoIGQ9Ik05LjgyOTU5IDMwLjUxNDJMMTUuNTIgMzMuOTAwOFYzMC44MzQ2TDE1LjAxMDYgMjguOTc3OEw5LjgyOTU5IDMwLjUxNDJaIiBmaWxsPSIjRTdFQkY2Ii8+CjxwYXRoIGQ9Ik0yNS4xNzIxIDMwLjUxNDJMMTkuNDgxNyAzMy45MDA4VjMwLjgzNDZMMTkuOTkxMSAyOC45Nzc4TDI1LjE3MjEgMzAuNTE0MloiIGZpbGw9IiNFN0VCRjYiLz4KPC9zdmc+Cg==";var rt="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTI4IDU2YzE1LjQ2NCAwIDI4LTEyLjUzNiAyOC0yOFM0My40NjQgMCAyOCAwIDAgMTIuNTM2IDAgMjhzMTIuNTM2IDI4IDI4IDI4WiIgZmlsbD0iIzFCNTNFNCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNyAyOGMwIDExLjU5OCA5LjQwMiAyMSAyMSAyMXMyMS05LjQwMiAyMS0yMVMzOS41OTggNyAyOCA3IDcgMTYuNDAyIDcgMjhabTE3LjIzNC02Ljc2NmEzIDMgMCAwIDAtMyAzdjcuNTMzYTMgMyAwIDAgMCAzIDNoNy41MzNhMyAzIDAgMCAwIDMtM3YtNy41MzNhMyAzIDAgMCAwLTMtM2gtNy41MzNaIiBmaWxsPSIjZmZmIi8+PC9zdmc+";var Yt="data:image/webp;base64,UklGRngEAABXRUJQVlA4IGwEAABwGgCdASqAAIAAPm00lkakIyIhLZJo4IANiWIGepzpzWVWfAfkz7VNZfrX4XyZfpY5Ve135hP6ydPjxWfVv9GH999QD/D/47rUPQA8tr9qvh98odpITg6KC6MdEPqtq8njJn8YQd8fRyCBjuASoE7gh976be39QP7ZH1EaOy2byZB4+6S1n4J1we4tNWPChOPxxBzZfuYsStcWv/tZNqcra7FT/gy1QnCQAkdw+gUNhMn35RFANgSXPFVHZFoSr9YdNxlhwS/DtBxpj4Yf0Qnyn1ZNu6NIDryzzumAAP71vcpK//N3uTN6/gf/cz+Z/IGl2OP82F2AtGYx70dIV3TDkNq9sgAhCr9IZ0HUhT+7KUeLtkqR+dPCxztN0qMTy/gT7xoQBHTf3pua3S29wTkDmy3Fsy7Lv8PTVtL4d5DjJ3QgT6S/r/RoLpXt5ckfNBuBZ5cD7q6/rSBKVrfLYRlMs8/PW5KR4PMrlV9BNfv/g3x2mjvrkNijQUMjZBeGWL8cm5JtS7/EOF5P9ze4qe1yV5zVSVFt5e+//WL+UiuNvKd6qedKWsisJogbBMgFYrymDXtX7rwy5qpOIKODEdjYEY7CDAkYcvhN9cLylaFJnB822+x+hXMltuGJXS6vpf+DkoddD4V8niiWXvf82VYQvu2agUc4/+HDH9o+hv59V9FWrvk5fNJfTvIgUkH5vCcCwDwre/O/6ftorAm9en57f1mnje373z/a1W3UpDbn5rBQsFfxl2oiKvtNeyc7bILmYZ0iKT2BTOvUMn7M6ICDBaoJqcgXpIDC5rsq6F4u2TteFi4n6sLLvkP/xXiOM3lY5srmZ5aRj/SRoHWQrdrmc+rvWyTUo7cqAq8S3QsPW3gcF09Cnxop1LydqPo8SIb8zKgJqFj+KuMY/BYxfntOPlxAD7Ehx/4fZ/cJtjDj8ZqAeuK4Ps7U3zMMVMXw9cIZE47iuLzaTpJl3avReDg2QmWLRYq3AOdhgvdD5H1IpkqcQMOWiDXt46xdgLbVT2Ae1AcmlYrb6xUGrmGgk2lIehc/Df+MRJdAHc+BmnyfR8P7gx7IJg6R0let/R14Na6KeMthUP59RT9SSo5n3YPARM1Z9nLfjDfDy16iRq10Y+2eaNT9Q1xbOf5+PULDFrojM5ABxLaZHFIu+UTUDacGy/DG/N1tqlJ7ePfOaI4pDt/QZhAb6PIVCPIJIXWgbQ/e0VK+9d2AS18H+V/KcyKz5VciEYdk+H1uB3uzeGMdIhKpR5J2JV+e1urFlNpACGuluMWUwzj6n2L72/fz5uXqrfjel5EhkCXHn77cHXY6Kfl9v28YvKSj5f3vzY+wbv8YHop9bGvu/rhBK18Ooq5RW2Kb7s3/xi+57dh2WcBpctxH2kG+9RoszJAlD07LaWub1vw6EYYsSHALEv0cUo8x53lVOWtxIr+fwYX5Jtnv8LYqeN7cAlkl/gWNhn5kus3rg0Wm7rKPongcsUaxaHrkLbdxjqEA9mX4C/AA",ot=Yt;var it="data:image/webp;base64,UklGRmAEAABXRUJQVlA4WAoAAAAQAAAAfwAAfwAAQUxQSD0BAAABCsi1battvlSCxmaGWrTUgLGQaLkNe8wBlRGrDNM8zGBm32ly/V9ETAC3DRcb/cnL9FS/iK4XwmqPRtxxu/7g4fNkfWrxO64T31my2hxOEbJZTu7Esq8/pyjfaVvbBWp3Z6SUwBZmypui9cTc5Jy/neLt09xA/ClinVoX8KaYPVll1aaoxVph38O651LyeoqbomhU3oF90lCJ5hR5U9MZQRvpkDvF7hY74Lp1H5z0h+A4uQd3//IBjud////7/w/wLwRHuQd3r4fg2PDBSakLjiEXnKucEbSRZrwJrZmgUfkE9k5DMXkNjKJI2vew7qmWrRossVYw4IHyhGtTfUh+iuvNvAakaW7As3hwPDG5eaB2B4USUFtb9vU7jE/altplstwaQRjqalLtOuG4XX/w8HmyPrX4nQsnYahNAQBWUDgg/AIAAHATAJ0BKoAAgAA+bTaWSCQjIiEhC7iADYlpAFVGVG5/99J5/Vd7/Zvx6/Eb47upeLfNQVn40OWGsvf/EZp1SJZ4eeKUwr+TUZu0yuMNAk4PBKF5fmL0eOz2sxlyF1k2PpU79Yw+1dd/VfsguNjNAOpujooZUvLoJkwr++tWg4MOdSMpiVVcFud3oFbBaC+w1q6Y0ih8Jyiu2FT5yd3off/EZxcAAP78rRBq1TvyDPGTtpZl6fMUoKvlLHGrtAC3XuckCfwRJnfG/aY5v+afCIPyjeFKANrccw0/eZYXfyOOymElPpcIFyn/DX0LVVChdzZGcPAMC2XCLLJfqNQLnrwVdrtp///aDQbauP7F7v0uv8UtFmP/5l0k7TnND9heE+aE4DSlRH+y/9Cx9KXkLzIJstm70HeMP4clZ1v4/6vCpX5CsJ70IuNXVGjSxs3OP9lrbuLhlcIIEc2SIGJ3qavevq/mkLkXudZ4SRo+SJpXOQuWqBRjAwTujM6fmPbC5/CYn3kwPLAFn7i92UJ9pgQN+JbG6TPsfKot9pwn+KP/VTLVvyv8aLGVn/+GmRt23RauLb8p5lk6WrB7qM1Ar9LD/ie+T2ZqIpT8ywwuSBWG37bH+0ZZqSmzKe5Q9PgQRVf9RHW7en1+w1M7OwvPKFtskA+SLeKXSb5NMYci6OzrZ/MkSWBl1XYD8Y0YE1CxlutKWGPQV7Paf1P7XQ1xLFTC8eZXqWX2oAV9TghLJj01pQgFxuvmoZGpQ9alHKf21/J4Vx74do7nSRTFJyl/L9VGrasy+tv0vcW9lbWL7j+MCdKyGh2xNTRV1oXhLA2Edu22lDIaFKT5GojhFjKc8QWDJ+bUo3km/xVNDGq0sE7TH4JM+gfqVuDsg/LZUtzFGL6SMLPJk71nRAKmzpRbTYWXl3XlTvOwzAZARyMhUDEcRGotZal/M7BwujgUYCgRQ8H3b+uRhEn6EueNF+Czzl1sG+Pe7IWuEd0aHVwiixyaqR3UWnWqQuAAAAAA";var at="data:image/webp;base64,UklGRtYCAABXRUJQVlA4IMoCAABQEgCdASqAAIAAPm02lUikIyIhIRgMIIANiWkcARAAF+tSv5/99J/RB9XsAGlSc78bIl6kh58aA3sp9hIcACdBu3D9g2hv6/+Cj+HX4bF4aHqZf6VdIWSW9bl353sa70S/qFAc892uoH8pqfPiakYAgEZCSd8aEmbltGbSPYfC4wvqZ9ezQiQYdXY3/Sg5wnSqEY6FToW0wM8QAAD+/PhAW398P+Y/Ufmdv1vCJ/v/ohtwIURd/2rR9z/+gzKn28ut3UaV0u/kc/8pninuF1e9YbAaSDHUeqAZqiAKIZmaGvWme8/luxhnX1Y5rtZk3eBL47mNGYRACwVMKHRl2LA/XhZbW1Q//lM1/6ic4D/8P5eWBMjc9tvr/1w65Tf+2YqPRUfatOAWlwt+JOQ7A40WTXjruFER/7NrZ3tjVzpksA2ujmryseHaiwyiei2mbF0GTnfMG+gl4/pLxq49MTM3bfXPCtft0z77211u4sTilNvJqdSH+3Qc5KfDH6gV4GWTwPSPR/7Krf/1FykCW2n/ReCjVJEy4jLXHwRFmqnHVsOyAdxpYIW4NBe7rv+kr9D8C5N5wiRt4L0AfG/CdI29CS9gLKmX0+uFXlCWpWGI69szzq5FWPBnjpMCeYssg4Hi5PZPL2bcVsOvTE6gCi1ykg26ZH7WE/KN8u9Wagu4TcAvU5nsMn9jc1NGwCZJ1vbQI8CyIWA2LNfuDo697Mov9ngaDmN701InhXXuZFANxq3en+JToh5LyqWp6Wg1UaAbKuM4iPHX41ht3YeOvwpXKTqngULJZvmnw4BeJc387ivRN9/yK//jm2x0r2tfpbafdYlNCsxcgG8lC2z5Vz2a0LuZIotzREDZkWc2Y9BzOaysg2ZacmnelGfW5UbxjADryUb+70mYMBLvUPN/rBiQE2XcSOtSRC91yn75qvUC6XhK/lbDAAAAAAA=";var ct="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0ibm9uZSIgdmlld0JveD0iMCAwIDI0IDI0IiBjbGFzcz0id2ViM2ljb25zIj48ZyBjbGlwLXBhdGg9InVybCgjdHJ1c3RfX2EpIj48cGF0aCBmaWxsPSIjMDUwMEZGIiBkPSJNMjQgMEgwdjI0aDI0eiIvPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik00LjggNi4zMTEgMTIgNHYxNmMtNS4xNDMtMi4xMzQtNy4yLTYuMjIyLTcuMi04LjUzM3ptMTQuNCAwTDEyIDR2MTZjNS4xNDMtMi4xMzQgNy4yLTYuMjIyIDcuMi04LjUzM3oiLz48L2c+PGRlZnM+PGNsaXBQYXRoIGlkPSJ0cnVzdF9fYSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMGgyNHYyNEgweiIvPjwvY2xpcFBhdGg+PC9kZWZzPjwvc3ZnPg==";var st="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iODAiIGhlaWdodD0iODAiIHZpZXdCb3g9IjAgMCA4MCA4MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3Qgd2lkdGg9IjgwIiBoZWlnaHQ9IjgwIiByeD0iMTIiIGZpbGw9IiMxQzdERkMiLz4KPHJlY3Qgd2lkdGg9IjgwIiBoZWlnaHQ9IjgwIiByeD0iMTIiIGZpbGw9InVybCgjcGFpbnQwX3JhZGlhbF8xXzQ2KSIvPgo8cGF0aCBkPSJNMjYuNDIyNyAzMS40NzMxQzMzLjkxNzEgMjQuMTc1NiA0Ni4wODI5IDI0LjE3NTYgNTMuNTc3MyAzMS40NzMxTDU0LjQ3OTYgMzIuMzU4QzU0Ljg1OCAzMi43MjA3IDU0Ljg1OCAzMy4zMTU1IDU0LjQ3OTYgMzMuNjc4Mkw1MS4zOTQ1IDM2LjY4MTNDNTEuMjA1MyAzNi44Njk5IDUwLjg5OTcgMzYuODY5OSA1MC43MTA1IDM2LjY4MTNMNDkuNDczNiAzNS40NzcyQzQ0LjIzNDcgMzAuMzg1IDM1Ljc2NTMgMzAuMzg1IDMwLjUyNjQgMzUuNDc3MkwyOS4yMDIxIDM2Ljc2ODRDMjkuMDEzIDM2Ljk1NyAyOC43MDc0IDM2Ljk1NyAyOC41MTgyIDM2Ljc2ODRMMjUuNDMzMSAzMy43NjUzQzI1LjA1NDcgMzMuNDAyNiAyNS4wNTQ3IDMyLjgwNzggMjUuNDMzMSAzMi40NDUxTDI2LjQyMjcgMzEuNDczMVpNNTkuOTY1OCAzNy42ODI0TDYyLjcxNjIgNDAuMzUxOEM2My4wOTQ2IDQwLjcxNDUgNjMuMDk0NiA0MS4zMDkzIDYyLjcxNjIgNDEuNjcyTDUwLjMzMjIgNTMuNzI4QzQ5Ljk1MzggNTQuMDkwNyA0OS4zNDI2IDU0LjA5MDcgNDguOTc4OCA1My43MjhMNDAuMTg5MiA0NS4xNjg0QzQwLjEwMTkgNDUuMDgxMyAzOS45NDE4IDQ1LjA4MTMgMzkuODU0NSA0NS4xNjg0TDMxLjA2NDkgNTMuNzI4QzMwLjY4NjUgNTQuMDkwNyAzMC4wNzUzIDU0LjA5MDcgMjkuNzExNSA1My43MjhMMTcuMjgzOCA0MS42NzJDMTYuOTA1NCA0MS4zMDkzIDE2LjkwNTQgNDAuNzE0NSAxNy4yODM4IDQwLjM1MThMMjAuMDM0MiAzNy42ODI0QzIwLjQxMjUgMzcuMzE5NyAyMS4wMjM3IDM3LjMxOTcgMjEuMzg3NSAzNy42ODI0TDMwLjE3NzIgNDYuMjQyQzMwLjI2NDUgNDYuMzI5IDMwLjQyNDUgNDYuMzI5IDMwLjUxMTkgNDYuMjQyTDM5LjMwMTUgMzcuNjgyNEMzOS42Nzk5IDM3LjMxOTcgNDAuMjkxIDM3LjMxOTcgNDAuNjU0OSAzNy42ODI0TDQ5LjQ0NDUgNDYuMjQyQzQ5LjUzMTggNDYuMzI5IDQ5LjY5MTkgNDYuMzI5IDQ5Ljc3OTIgNDYuMjQyTDU4LjU2ODggMzcuNjgyNEM1OC45NzYzIDM3LjMxOTcgNTkuNTg3NSAzNy4zMTk3IDU5Ljk2NTggMzcuNjgyNFoiIGZpbGw9IndoaXRlIi8+CjxkZWZzPgo8cmFkaWFsR3JhZGllbnQgaWQ9InBhaW50MF9yYWRpYWxfMV80NiIgY3g9IjAiIGN5PSIwIiByPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwMDI0Nzk1NSA0MC4wMDEyKSBzY2FsZSg4MCkiPgo8c3RvcCBzdG9wLWNvbG9yPSIjNUQ5REY2Ii8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzAwNkZGRiIvPgo8L3JhZGlhbEdyYWRpZW50Pgo8L2RlZnM+Cjwvc3ZnPgo=";var Zt="data:image/webp;base64,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",lt=Zt;var Gt="data:image/webp;base64,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",ut=Gt;var Rt="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0ibm9uZSIgdmlld0JveD0iMCAwIDI0IDI0Ij48ZyBjbGlwLXBhdGg9InVybCgjc29sZmxhcmVfX2EpIj48cGF0aCBmaWxsPSIjRkZFRjQ2IiBkPSJNMjQgMEgwdjI0aDI0eiIvPjxwYXRoIGZpbGw9IiMwMjA1MEEiIGQ9Im0xMi4wNTYgMTIuNjM2IDEuMDk4LTEuMDY2IDIuMDQ3LjY3M2MxLjM0LjQ0OSAyLjAxIDEuMjcxIDIuMDEgMi40MyAwIC44NzgtLjMzNSAxLjQ1OC0xLjAwNSAyLjIwNWwtLjIwNS4yMjUuMDc1LS41MjRjLjI5Ny0xLjkwNi0uMjYtMi43MjktMi4xMDMtMy4zMjd6TTkuMyA2LjExMmw1LjU4NCAxLjg3LTEuMjEgMS4xNTgtMi45MDMtLjk3MmMtMS4wMDUtLjMzNi0xLjM0LS44NzgtMS40Ny0yLjAxOHptLS4zMzUgOS40OTYgMS4yNjYtMS4yMTYgMi4zODIuNzg2YzEuMjQ3LjQxIDEuNjc1Ljk1MyAxLjU0NSAyLjMxN3ptLTEuNi01LjQyMWMwLS4zNTUuMTg2LS42OTIuNTAyLS45NzIuMzM1LjQ4Ni45MTIuOTE2IDEuODI0IDEuMjE1bDEuOTczLjY1NC0xLjA5OCAxLjA2Ni0xLjkzNS0uNjM2Yy0uODk0LS4yOTktMS4yNjYtLjc0OC0xLjI2Ni0xLjMyN00xMy4yMSAyMGM0LjA5NC0yLjcyOSA2LjI5LTQuNTggNi4yOS02Ljg2IDAtMS41MTQtLjg5My0yLjM1NS0yLjg2Ni0zLjAxbC0xLjQ4OS0uNTA0IDQuMDc2LTMuOTI1LS44MTktLjg3OS0xLjIxIDEuMDY2TDExLjQ4IDRjLTEuNzY4LjU4LTQuMDAxIDIuMjgtNC4wMDEgMy45ODEgMCAuMTg3LjAxOC4zNzQuMDc0LjU4LTEuNDcuODQtMi4wNjYgMS42MjYtMi4wNjYgMi41OTggMCAuOTE2LjQ4NCAxLjgzMiAyLjAyOSAyLjMzNmwxLjIyOC40MTJMNC41IDE4bC44MTkuODc4IDEuMzIxLTEuMjE0eiIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9InNvbGZsYXJlX19hIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+",yt=Rt;var Bt="data:image/webp;base64,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",dt=Bt;var qt="data:image/webp;base64,UklGRoQDAABXRUJQVlA4WAoAAAAQAAAAfwAAfwAAQUxQSEIAAAABZ6Aqsg06PfeBFhTwp4eIiO9JAFqgDkpi24oqfJYEDE1BYnFoFH6PQLMb4Ef0fwLSh5eMq7SmgFL/ddqYtCcxsD1WUDggHAMAADAWAJ0BKoAAgAA+bTaVR6QjIiEqFmgwgA2JQBrjvkex/mORM4ijCO4OaOcB4lvSj8xXnF9IB/WuoY9AD9ZvTb9lv9t/2k9ozVd4X5WzBuqgZcQbMzL39biv4/sPc7xOoYvhJHo23KgOlP+c+yXvcH13owJyPDoq7y50x3JBthvJRoRyksngI8TAN9pWTOaIkXdpLWMVEy89M91VKMq815lMLz8HFhZ4XtFGM2aIzuqZuVVhyc6r9IgGMAD+/KFwXOCQSQ9ryjC41iIU+x7fxryCxallV7uXiPxdW7zbeLBQ351xqzs44tk3+t0b8A/KlEzOpl5y+1FhbBPuZsnr4/Z46914Q5womQkrfJfwSs+vDlfdJayjqpubSuXhqaVXD5PNpOzOvwLkppF/6z5wUxKxfjHL8qs50UF/W0TXKsYRe1peOBA/Hlpw9NYCy1yzO0AsgwQ4vl2SkUU4Ur4J7qlU+Ru3VCZf9paZ5YrooPtuZ9Fafd7zr9k4HnNw89Qup9rqdusYvnoyXuc92GVOsZ1uIZlbMcFUl09LHPLZpEejDRbC4JX1Q9hdf7di4hax2BCaC1LC8nE6eQ7cGsKGM+A9TmTSIaWkkm+ePgmHH6z7abr4NNmx7xjqZrYOmBZyctY/kLXdG1WQfkPmbp276XDZocbirca8okm/P+JQXfpBsSRL3Je6T608k0tui8loC/pHCq2VmW5WLz9yIgVuwppRQ9wIUqvaXHNIz/TkSxTiYTjYZJP3CU11TXQujaQkfUu4uEwJ+nuhTCb7z0P8CQtvREirvrT9mwq8HSHXWdq6fzhLWKH5vSEQDBQjxd8dg6YsIeNLmlcdtlZTQ70Mq41FW/+f0T1hn8v7AP+o9//gmsSR8ys+PfAnh6IbY7tqrXXSRz71PzTBFdw8Fy/nPpP50iooJWaORiY4o+rQrh9/71uCL299F4JXVeLzV8H8ojGEmsFPG4TMfIsyiJ+nLwJ6kUXc/ijRDGDVUa3CVLG3xH+wecr+NwlT6rvrbYTmNsOp/sS8Fosv1k0X7Xz3048DRkF0AAEHwlMAAAA=",Mt=qt;var Ft={ii:_,nfid:$,oisy:tt,plug:et,metamask:nt,coinbase:rt,rainbow:ot,brave:lt,phantom:ut,solflare:yt,backpack:Mt,rabby:dt,ledger:it,okx:at,trust:ct,walletconnect:st};function U(a,t){let e=(a||"").toLowerCase();return Ft[e]||t||null}var gt=!1;var V=[1,8453,84532],H=[1,8453,84532];async function Vt(a){return new Promise((t,e)=>{try{let r=typeof document<"u"?document:null;if(!r)return t();let i=Array.from(r.getElementsByTagName("script")).find(c=>c&&c.src===a);if(i&&String(i.type||"").toLowerCase()!=="module")return t();let n=r.createElement("script");n.src=a,n.async=!0,n.onload=()=>t(),n.onerror=()=>e(new Error("Failed to load script: "+a)),r.head.appendChild(n)}catch{t()}})}async function Ht(a){for(let t of a)try{return await Vt(t),!0}catch{}return!1}function b(a,t){let e=t&&typeof t.globalVar=="string"&&t.globalVar.trim()?t.globalVar.trim():null,r=[e?a?.[e]?.default:null,e?a?.[e]:null,a?.["@walletconnect/ethereum-provider"]?.default,a?.["@walletconnect/ethereum-provider"],a?.WalletConnect?.EthereumProvider?.default,a?.WalletConnect?.EthereumProvider,a?.EthereumProvider?.default,a?.EthereumProvider,a?.WalletConnectEthereumProvider?.default,a?.WalletConnectEthereumProvider,a?.WalletConnectProvider?.default,a?.WalletConnectProvider].filter(Boolean);for(let o of r)if(typeof o=="function"||o&&typeof o.init=="function")return o;return null}async function J(a,t=1500,e=50){let r=Date.now();return new Promise((o,i)=>{let n=()=>{try{let c=a();if(c)return o(c)}catch{}if(Date.now()-r>=t)return o(null);setTimeout(n,e)};n()})}async function Jt(){}function wt(){try{let a=typeof navigator<"u"?navigator:window?.navigator,t=String(a?.userAgent||"").toLowerCase();return/iphone|ipad|ipod|android|mobile|windows phone/.test(t)}catch{return!1}}async function X(){let a=typeof window<"u"?window:{};if(!(a?.QRCode&&typeof a.QRCode?.toCanvas=="function")){try{let t=await import("qrcode"),e=t&&(t.default||t)||null;if(e&&typeof e.toCanvas=="function"){a.QRCode=e;return}}catch{}await J(()=>{let t=typeof window<"u"?window:{};return t?.QRCode&&typeof t.QRCode?.toCanvas=="function"},2e3,50)}}async function Xt(a){try{let t=typeof document<"u"?document:null;if(!t)return;let e=l=>{try{window.location.href=l}catch{try{window.open(l,"_self","noopener,noreferrer")}catch{}}},r=[],o=(l,u)=>{try{let w=setTimeout(()=>{try{let y=typeof document<"u"?document:null;if(y&&y.visibilityState==="hidden")return;l()}catch{}},u);r.push(w)}catch{}},i=()=>{try{r.forEach(l=>{try{clearTimeout(l)}catch{}})}catch{}r.length=0},n=()=>{try{let l=typeof document<"u"?document:null;l&&l.visibilityState==="hidden"&&i()}catch{}};try{document.addEventListener("visibilitychange",n)}catch{}let c=l=>{let u=encodeURIComponent(l),w=`https://go.cb-w.com/wc?uri=${u}`,y=`coinbasewallet://wc?uri=${u}`;e(w),o(()=>e(y),600),o(()=>{i();try{document.removeEventListener("visibilitychange",n)}catch{}},4e3)},s=(l,u,w)=>{let y=t.createElement("button");y.style.display="flex",y.style.alignItems="center",y.style.gap="8px",y.style.padding="8px 12px",y.style.borderRadius="10px",y.style.border="1px solid #444",y.style.background="#2a2a2a",y.style.color="#fff",y.style.cursor="pointer",y.style.width="100%",y.style.justifyContent="center";let g=t.createElement("img"),A=u?U(u):null;A&&(g.src=A,g.alt=u||"wallet",g.style.width="18px",g.style.height="18px",g.style.display="block",y.appendChild(g));let I=t.createElement("span");return I.textContent=l,I.style.fontSize="13px",y.appendChild(I),y.onclick=f=>{try{f.preventDefault()}catch{}try{w()}catch{}},y},M=t.getElementById("icpay-wc-overlay");if(!M){let l=t.createElement("div");l.id="icpay-wc-overlay",l.style.position="fixed",l.style.inset="0",l.style.background="rgba(0,0,0,0.55)",l.style.display="flex",l.style.alignItems="center",l.style.justifyContent="center",l.style.zIndex="999999";let u=t.createElement("div");u.style.background="#1a1a1a",u.style.border="1px solid #333",u.style.borderRadius="16px",u.style.padding="16px",u.style.width="320px",u.style.boxShadow="0 10px 30px rgba(0,0,0,0.4)",u.style.display="flex",u.style.flexDirection="column",u.style.alignItems="center";let w=t.createElement("div");w.textContent="Connect with your wallet",w.style.color="#fff",w.style.fontSize="16px",w.style.marginBottom="12px";let y=t.createElement("div");y.id="icpay-wc-qr-container",y.style.width="260px",y.style.height="260px",y.style.background="#fff",y.style.borderRadius="8px";let g=t.createElement("canvas");g.id="icpay-wc-qr-canvas",g.style.width="260px",g.style.height="260px",g.style.display="block",g.style.borderRadius="8px";let A=wt();if(A){let f=t.createElement("div");f.style.display="flex",f.style.flexDirection="column",f.style.alignItems="stretch",f.style.gap="8px",f.style.width="100%";let v=()=>{try{w.textContent="Waiting for approval in your wallet...",f.style.pointerEvents="none",f.style.opacity="0.7"}catch{}};f.appendChild(s("MetaMask with WalletConnect","metamask",()=>{v(),e(`https://metamask.app.link/wc?uri=${encodeURIComponent(a)}`)})),f.appendChild(s("OKX Wallet with WalletConnect","okx",()=>{v(),e(`okx://wallet/wc?uri=${encodeURIComponent(a)}`)})),u.appendChild(f)}let I=t.createElement("button");I.textContent="Close",I.style.marginTop="12px",I.style.background="#2a2a2a",I.style.color="#fff",I.style.border="1px solid #444",I.style.padding="6px 10px",I.style.borderRadius="8px",I.onclick=()=>{try{let f=t.getElementById("icpay-wc-overlay");f&&f.parentNode&&f.parentNode.removeChild(f)}catch{}},u.appendChild(w),A||(y.appendChild(g),u.appendChild(y)),u.appendChild(I),l.appendChild(u),t.body.appendChild(l),M=l}let d=t.getElementById("icpay-wc-qr-container");if(!wt()&&d){await X();let l=typeof window<"u"?window:{};if(l?.QRCode?.toCanvas)try{d.innerHTML="";let u=t.createElement("canvas");u.id="icpay-wc-qr-canvas",u.style.width="260px",u.style.height="260px",u.style.display="block",u.style.borderRadius="8px",d.appendChild(u),l.QRCode.toCanvas(u,a,{width:260,margin:2})}catch{}}}catch{}}function h(){try{let t=(typeof document<"u"?document:null)?.getElementById("icpay-wc-overlay");t&&t.parentNode&&t.parentNode.removeChild(t)}catch{}}function Kt(a){try{let t=typeof document<"u"?document:null;if(!t)return;let e=t.getElementById("icpay-wc-overlay");if(!e){let o=t.createElement("div");o.id="icpay-wc-overlay",o.style.position="fixed",o.style.inset="0",o.style.background="rgba(0,0,0,0.55)",o.style.display="flex",o.style.alignItems="center",o.style.justifyContent="center",o.style.zIndex="999999";let i=t.createElement("div");i.style.background="#1a1a1a",i.style.border="1px solid #333",i.style.borderRadius="16px",i.style.padding="16px",i.style.width="320px",i.style.boxShadow="0 10px 30px rgba(0,0,0,0.4)",i.style.display="flex",i.style.flexDirection="column",i.style.alignItems="center";let n=t.createElement("div");n.textContent="Connect with your wallet",n.style.color="#fff",n.style.fontSize="16px",n.style.marginBottom="12px";let c=t.createElement("div");c.id="icpay-wc-qr-container",c.style.width="260px",c.style.height="260px",c.style.background="#fff",c.style.borderRadius="8px";let s=t.createElement("button");s.textContent="Close",s.style.marginTop="12px",s.style.background="#2a2a2a",s.style.color="#fff",s.style.border="1px solid #444",s.style.padding="6px 10px",s.style.borderRadius="8px",s.onclick=()=>{try{let M=t.getElementById("icpay-wc-overlay");M&&M.parentNode&&M.parentNode.removeChild(M)}catch{}},i.appendChild(n),i.appendChild(c),i.appendChild(s),o.appendChild(i),t.body.appendChild(o),e=o}let r=t.getElementById("icpay-wc-qr-container");if(r){r.innerHTML="";let o=t.createElement("img");o.src=a,o.alt="WalletConnect QR",o.style.width="260px",o.style.height="260px",o.style.display="block",o.style.borderRadius="8px",r.appendChild(o)}}catch{}}var x=class{constructor(t){this.id="walletconnect";this.label="WalletConnect";this.wcProvider=null;this.wcProviderProxy=null;this.wcRedirect=null;this.lastDisplayUri=null;this.autoOpenedWcDeepLink=!1;this.autoOpenedPhantom=!1;this._preGenerateMode=!1;this.preGeneratedQrDataUrl=null;this.preGeneratedUri=null;this.pendingConnectPromise=null;this._wcProviderFromPreGenerate=null;this.config=t.config||{}}getAdapterConfig(){try{return this.config?.adapters?.walletconnect?.config||{}}catch{return{}}}getInjectedWcProvider(){try{let e=(typeof window<"u"?window:{}).ethereum;if(Array.isArray(e?.providers)){let r=e.providers.find(o=>o&&(o.isWalletConnect||o?.provider?.isWalletConnect));if(r)return r}if(e&&(e.isWalletConnect||e?.provider?.isWalletConnect))return e}catch{}return null}getEvmProvider(){return this.wcProviderProxy?this.wcProviderProxy:this.wcProvider?this.wcProvider:null}async isInstalled(){try{if(this.getInjectedWcProvider())return!0;let e=!!b(typeof window<"u"?window:{}),r=this.getAdapterConfig(),o=!!(r.projectId||r.projectID);return!!(e&&o)}catch{return!1}}async isConnected(){try{let t=this.getEvmProvider();if(!t)return!1;let e=await t.request?.({method:"eth_accounts"});return Array.isArray(e)&&e.length>0}catch{return!1}}async ensureV2Globals(t){let e=typeof window<"u"?window:{};if(await Jt(),!b(e,t)){if(!gt){let r=t&&(t.umdUrls||t.umdUrl)||null,o=[];try{let M=typeof document<"u"?document:null;if(M){let d=Array.from(M.getElementsByTagName("script")),p=l=>{let u=l.toLowerCase();return u.includes("icpay-embed")||u.includes("widget.icpay")||u.includes("icpay-widget")};d.forEach(l=>{try{let u=String(l?.src||"");if(!u||!p(u))return;let w=u.lastIndexOf("/");if(w>0){let y=u.slice(0,w);o.push(`${y}/wc/index.umd.js`,`${y}/index.umd.js`)}}catch{}})}}catch{}let i=typeof window<"u"&&window.location&&window.location.origin?window.location.origin:"",n=i?[`${i}/wp-content/plugins/icpay-payments/assets/js/wc/index.umd.js`,`${i}/wp-content/plugins/instant-crypto-payments-for-woocommerce/assets/js/wc/index.umd.js`]:[],c=[...Array.isArray(r)?r.filter(Boolean):typeof r=="string"&&r.trim()?[r.trim()]:[],...o,...n];gt=await Ht(c)}await J(()=>b(typeof window<"u"?window:{},t),2e3,100)}}isMobileBrowser(){try{let t=typeof navigator<"u"?navigator:window?.navigator,e=String(t?.userAgent||"").toLowerCase();return/iphone|ipad|ipod|android|mobile|windows phone/.test(e)}catch{return!1}}openWalletAppIfPossible(){if(this.isMobileBrowser())try{let t=this.wcRedirect||{},e=t.native||t.universal||"";if(!e)return;try{window.location.href=e}catch{try{window.open(e,"_self","noopener,noreferrer")}catch{}}}catch{}}wrapProviderForMobileWake(t){if(!t||typeof t.request!="function")return t;let e=i=>{if(!this.isMobileBrowser()||!i)return!1;let n=i.toLowerCase();return n==="eth_sendtransaction"||n==="eth_signtransaction"||n==="eth_sign"||n==="personal_sign"||n==="eth_signtypeddata"||n==="eth_signtypeddata_v3"||n==="eth_signtypeddata_v4"||n==="wallet_switchethereumchain"||n==="wallet_addethereumchain"||n==="wallet_requestpermissions"},r=this;return new Proxy(t,{get(i,n,c){return n==="request"?async function(s){try{let M=s&&(s.method||typeof s=="object"&&s?.method);if(e(M)){r.openWalletAppIfPossible();try{await new Promise(d=>setTimeout(d,50))}catch{}}}catch{}return i.request.apply(i,arguments)}:Reflect.get(i,n,c)}})}async initGlobalProvider(){try{let t=typeof window<"u"?window:{},e=this.getAdapterConfig();if(!!!(e.projectId||e.projectID))return null;await this.ensureV2Globals(e);let o=b(t,e);if(o||(o=await J(()=>b(typeof window<"u"?window:{},e),4e3,100)),!o)return null;try{this.config?.debug&&console.debug("[ICPay WC] Using ctor",{isFn:typeof o=="function",hasInit:!!(o&&typeof o.init=="function"),name:o&&(o.name||o.constructor?.name)||"unknown"})}catch{}let i=String(e.projectId||e.projectID),n=V.slice(),c=H.slice(),s=["eth_requestAccounts","eth_accounts","eth_chainId","personal_sign","eth_sign","eth_signTypedData","eth_signTypedData_v3","eth_signTypedData_v4","eth_sendTransaction","wallet_switchEthereumChain","wallet_addEthereumChain"],M=["accountsChanged","chainChanged","connect","disconnect","message"],d=(()=>{try{let A=String(t?.location?.origin||"").trim();return A&&/^https?:\/\//.test(A)?A:"https://widget.icpay.org"}catch{return"https://widget.icpay.org"}})(),p=(()=>{try{return String(e?.metadata?.name||t?.document?.title||"ICPay Widget").trim()||"ICPay Widget"}catch{return"ICPay Widget"}})(),l=(()=>{try{return String(e?.metadata?.description||"ICPay mobile connect").trim()||"ICPay mobile connect"}catch{return"ICPay mobile connect"}})(),u=(()=>{try{return String(e?.metadata?.url||d).trim()||d}catch{return d}})(),w=(()=>{try{let A=(Array.isArray(e?.metadata?.icons)?e?.metadata?.icons:Array.isArray(e?.icons)?e?.icons:null)||null,f=(A&&A.length>0?A:[d+"/favicon.ico",d+"/apple-touch-icon.png"]).filter(v=>typeof v=="string"&&/^https?:\/\//.test(v));return f.length>0?f:[d+"/favicon.ico"]}catch{return[d+"/favicon.ico"]}})(),y={name:p,description:l,url:u,icons:w},g=typeof o.init=="function"?await o.init({projectId:i,chains:n,optionalChains:c,showQrModal:!1,metadata:y,relayUrl:"wss://relay.walletconnect.com",methods:s,optionalMethods:s,events:M,optionalEvents:M}):new o({projectId:i,chains:n,optionalChains:c,showQrModal:!1,metadata:y,relayUrl:"wss://relay.walletconnect.com",methods:s,optionalMethods:s,events:M,optionalEvents:M});try{await X(),g.on?.("display_uri",A=>{try{this.lastDisplayUri=A}catch{}if(!this._preGenerateMode)try{Xt(A)}catch{}}),g.on?.("disconnect",()=>{try{h()}catch{}})}catch{}return g}catch{return null}}async getOrCreateQrDataUrl(t){if(this.preGeneratedQrDataUrl)return this.preGeneratedQrDataUrl;this._preGenerateMode=!0;try{let e=await this.initGlobalProvider();if(!e)return null;await X();let r=typeof window<"u"?window:{};return r?.QRCode?.toCanvas?await new Promise((o,i)=>{let n=!1,c=null,s=d=>{n||(n=!0,c!=null&&clearTimeout(c),o(d))},M=d=>{try{this.preGeneratedUri=d;let l=(typeof document<"u"?document:null)?.createElement("canvas");if(!l){s(null);return}r.QRCode.toCanvas(l,d,{width:260,margin:2}),this.preGeneratedQrDataUrl=l.toDataURL("image/png"),this._wcProviderFromPreGenerate=e,s(this.preGeneratedQrDataUrl)}catch{s(null)}};c=setTimeout(()=>s(null),15e3);try{e.once?.("display_uri",M);let d=e.connect?.({chains:V.slice(),optionalChains:H.slice()});this.pendingConnectPromise=d&&typeof d.then=="function"?d.then(async()=>{try{let p=await e.request?.({method:"eth_accounts"}),l=Array.isArray(p)&&p[0]||"";if(l)return{owner:l,principal:l,connected:!0}}catch{}throw new Error("No account returned by WalletConnect")}):null,this.pendingConnectPromise&&this.pendingConnectPromise.then(p=>{this.wcProvider=this._wcProviderFromPreGenerate,this.wcProviderProxy=this.wrapProviderForMobileWake(this.wcProvider);try{t?.onConnected?.(p)}catch{}}).catch(()=>{}),d&&typeof d.catch=="function"&&d.catch(()=>{})}catch{s(null)}}):null}finally{this._preGenerateMode=!1}}async connect(){if(this.pendingConnectPromise&&this.preGeneratedQrDataUrl&&this._wcProviderFromPreGenerate){this.wcProvider=this._wcProviderFromPreGenerate,this.wcProviderProxy=this.wrapProviderForMobileWake(this.wcProvider);try{let n=await this.wcProviderProxy.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0){let c=n[0]||"";return{owner:c,principal:c,connected:!0}}}catch{}try{Kt(this.preGeneratedQrDataUrl)}catch{}try{this.wcProviderProxy.on?.("connect",async()=>{try{let n=await this.wcProviderProxy.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0)try{h()}catch{}}catch{}})}catch{}try{await this.pendingConnectPromise;let n=await this.wcProviderProxy.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0){try{h()}catch{}let c=n[0]||"";return{owner:c,principal:c,connected:!0}}}catch{}let i=Date.now();for(;Date.now()-i<6e4;){try{let n=await this.wcProviderProxy.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0){try{h()}catch{}let c=n[0]||"";return{owner:c,principal:c,connected:!0}}}catch{}await new Promise(n=>setTimeout(n,500))}try{h()}catch{}throw new Error("No account returned by WalletConnect")}try{let i=[];for(let n=0;n<localStorage.length;n++){let c=localStorage.key(n);c&&(c==="walletconnect"||c.startsWith("wc@")||c.startsWith("@walletconnect/")||c.toLowerCase().includes("walletconnect"))&&i.push(c)}i.forEach(n=>{try{localStorage.removeItem(n)}catch{}})}catch{}let t=this.getInjectedWcProvider();if(t){this.wcProvider=t,this.wcProviderProxy=this.wrapProviderForMobileWake(this.wcProvider);let i=await this.wcProviderProxy.request({method:"eth_requestAccounts"}),n=Array.isArray(i)&&i[0]||"";if(!n)throw new Error("No account returned by WalletConnect");return{owner:n,principal:n,connected:!0}}let e=await this.initGlobalProvider();if(e){this.wcProvider=e;try{let s=e?.session?.peer?.metadata?.redirect||e?.session?.peer?.metadata?.redirects||null;s&&(s.native||s.universal)&&(this.wcRedirect={native:s.native,universal:s.universal})}catch{}try{await this.wcProvider.disconnect?.()}catch{}this.wcProviderProxy=this.wrapProviderForMobileWake(this.wcProvider);try{await this.wcProviderProxy.connect?.({chains:V.slice(),optionalChains:H.slice()})}catch{}try{await this.wcProviderProxy.request?.({method:"eth_requestAccounts"})}catch{}try{await this.wcProviderProxy.enable?.()}catch{}try{this.wcProviderProxy.on?.("connect",async()=>{try{let s=await this.wcProviderProxy.request?.({method:"eth_accounts"});if(Array.isArray(s)&&s.length>0)try{h()}catch{}}catch{}})}catch{}let n=await(async(s=6e4)=>{let M=Date.now();return new Promise(async(d,p)=>{let l=!1,u=(w,y)=>{if(!l){l=!0;try{h()}catch{}w&&w.length>0?d(w):p(y||new Error("No account returned by WalletConnect"))}};try{let w=g=>{let A=Array.isArray(g)?g:[];A.length>0&&u(A)},y=async()=>{try{let g=typeof document<"u"?document:null;if(g&&g.visibilityState==="visible"){try{await this.wcProviderProxy.request?.({method:"eth_requestAccounts"})}catch{}try{await this.wcProviderProxy.connect?.()}catch{}try{let A=await this.wcProviderProxy.request?.({method:"eth_accounts"}),I=!(Array.isArray(A)&&A.length>0)}catch{}}}catch{}};this.wcProviderProxy.on?.("accountsChanged",w);try{document.addEventListener("visibilitychange",y)}catch{}for(;!l&&Date.now()-M<s;){try{let g=await this.wcProviderProxy.request?.({method:"eth_accounts"});if(Array.isArray(g)&&g.length>0){this.wcProviderProxy.removeListener?.("accountsChanged",w);try{document.removeEventListener("visibilitychange",y)}catch{}return u(g)}}catch{}await new Promise(g=>setTimeout(g,500))}this.wcProviderProxy.removeListener?.("accountsChanged",w);try{document.removeEventListener("visibilitychange",y)}catch{}u(null,new Error("Timed out waiting for WalletConnect approval"))}catch(w){u(null,w)}})})(),c=Array.isArray(n)&&n[0]||"";if(!c)throw new Error("No account returned by WalletConnect");return{owner:c,principal:c,connected:!0}}let r=this.getAdapterConfig();throw!(r?.projectId||r?.projectID)?new Error("WalletConnect projectId is not configured. Set plugNPlay.adapters.walletconnect.config.projectId to enable WalletConnect."):new Error("WalletConnect provider not available. Ensure the self-hosted EthereumProvider UMD is available (dist/wc/index.umd.js) or provide plugNPlay.adapters.walletconnect.config.umdUrls.")}async disconnect(){try{let t=this.getEvmProvider();try{await t?.disconnect?.()}catch{}try{await t?.disconnectSession?.()}catch{}try{h()}catch{}this.preGeneratedQrDataUrl=null,this.preGeneratedUri=null,this.pendingConnectPromise=null,this._wcProviderFromPreGenerate=null;try{let e=[];for(let r=0;r<localStorage.length;r++){let o=localStorage.key(r);o&&(o==="walletconnect"||o.startsWith("wc@")||o.startsWith("@walletconnect/")||o.includes("WALLETCONNECT"))&&e.push(o)}e.forEach(r=>{try{localStorage.removeItem(r)}catch{}})}catch{}try{t?.removeAllListeners?.("accountsChanged")}catch{}try{t?.removeAllListeners?.("chainChanged")}catch{}try{t?.removeAllListeners?.("disconnect")}catch{}this.wcProvider=null}catch{}}async getPrincipal(){try{let t=this.getEvmProvider();if(!t)return null;let e=await t.request?.({method:"eth_accounts"});return Array.isArray(e)&&e[0]||""||null}catch{return null}}getActor(t){throw new Error("EVM wallets cannot provide IC actors. Use IC adapters for IC canister interactions.")}};function At(){try{let a=typeof navigator<"u"?navigator:window?.navigator,t=String(a?.userAgent||"").toLowerCase();return/iphone|ipad|ipod|android|mobile|windows phone/.test(t)}catch{return!1}}function N(){try{let a=typeof window<"u"?window:{};if(a.coinbaseWalletExtension)return a.coinbaseWalletExtension;let t=a.ethereum;if(t&&Array.isArray(t.providers)){let e=t.providers.find(r=>r&&(r.isCoinbaseWallet||r?.provider?.isCoinbaseWallet));if(e)return e}return t&&(t.isCoinbaseWallet||t?.provider?.isCoinbaseWallet)||At()&&t&&typeof t.request=="function"?t:null}catch{return null}}var Q=class{constructor(t){this.id="coinbase";this.label="Coinbase Wallet";this.config=t.config||{}}getEvmProvider(){return N()}async isInstalled(){try{return!!N()}catch{return!1}}async isConnected(){try{let t=N();if(!t)return!1;let e=await t.request({method:"eth_accounts"});return Array.isArray(e)&&e.length>0}catch{return!1}}async connect(){let t=N();if(!t){if(typeof window<"u"&&At()){try{let n=String(window.location?.href||""),c=`cbwallet://dapp?url=${encodeURIComponent(n)}`;try{window.dispatchEvent(new CustomEvent("icpay-sdk-wallet-deeplink",{detail:{wallet:"coinbase",url:c}}))}catch{}try{window.location.href=c}catch{try{window.open(c,"_self","noopener,noreferrer")}catch{}}}catch{}throw new Error("Opening Coinbase Wallet\u2026 If nothing happens, install Coinbase Wallet and try again.")}throw new Error("Coinbase Wallet not available")}let e=n=>new Promise(c=>setTimeout(c,n)),r=async()=>{try{let n=await t.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0)return n}catch{}try{let n=await t.request?.({method:"eth_requestAccounts"});if(Array.isArray(n)&&n.length>0)return n}catch(n){if(n&&(n.code===4001||n.code==="4001"))throw new Error("Connection request was rejected")}try{await t.request?.({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]});let n=await t.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0)return n}catch{}return[]},o=[];for(let n=0;n<3&&o.length===0;n++)t=N()||t,o=await r(),o.length===0&&await e(300);let i=Array.isArray(o)&&o[0]||"";if(!i)throw new Error("No account returned by Coinbase Wallet");return{owner:i,principal:i,connected:!0}}async disconnect(){try{let t=N();if(!t)return;try{await t.request?.({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]})}catch{}try{t.removeAllListeners?.("accountsChanged")}catch{}try{t.removeAllListeners?.("chainChanged")}catch{}try{t.removeAllListeners?.("disconnect")}catch{}}catch{}}async getPrincipal(){try{let t=N();if(!t)return null;let e=await t.request({method:"eth_accounts"});return Array.isArray(e)&&e[0]||""||null}catch{return null}}getActor(t){throw new Error("EVM wallets cannot provide IC actors. Use IC adapters for IC canister interactions.")}};function pt(){try{let a=typeof navigator<"u"?navigator:window?.navigator;return!!(a&&(a.brave||String(a.userAgent||"").toLowerCase().includes("brave")))}catch{return!1}}function _t(a){try{let t=typeof window<"u"?window:{};if(t.brave?.ethereum)return t.brave.ethereum;let e=t.ethereum;if(!e)return null;if(Array.isArray(e.providers)&&e.providers.length){let o=e.providers.find(i=>i&&(i.isBraveWallet||i?.walletMeta?.name&&String(i.walletMeta.name).toLowerCase().includes("brave")));if(o)return o;if(a&&pt()){let i=e.providers.find(n=>n&&typeof n.request=="function"&&!n.isMetaMask&&!n.isCoinbaseWallet&&!n.isRabby&&!n.isOkxWallet&&!n.isOKExWallet&&!n.isPhantom);return i||e.providers[0]||null}return null}return e.isBraveWallet||(e?.walletMeta?.name?String(e.walletMeta.name).toLowerCase():"").includes("brave")||a&&pt()&&typeof e.request=="function"&&!e.isMetaMask&&!e.isCoinbaseWallet&&!e.isRabby&&!e.isOkxWallet&&!e.isOKExWallet&&!e.isPhantom?e:null}catch{return null}}var W=class{constructor(t){this.id="brave";this.label="Brave Wallet";this.config=t.config||{}}getProvider(){return _t(!0)}getEvmProvider(){return this.getProvider()}async isInstalled(){try{return!!this.getProvider()}catch{return!1}}async isConnected(){try{let t=this.getProvider();if(!t)return!1;let e=await t.request?.({method:"eth_accounts"});return Array.isArray(e)&&e.length>0&&typeof e[0]=="string"&&e[0]?!0:!!(t?.selectedAddress||Array.isArray(t?.accounts)&&t.accounts[0])}catch{return!1}}async connect(){let t=this.getProvider();if(!t)throw new Error("Brave Wallet not available");let e=await t.request?.({method:"eth_requestAccounts"}),r=Array.isArray(e)&&e[0]||"";if(!r)throw new Error("No account returned by Brave Wallet");return{owner:r,principal:r,connected:!0}}async disconnect(){try{let t=this.getProvider();if(!t)return;try{await t.request?.({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]})}catch{}try{t.removeAllListeners?.("accountsChanged")}catch{}try{t.removeAllListeners?.("chainChanged")}catch{}try{t.removeAllListeners?.("disconnect")}catch{}}catch{}}async getPrincipal(){try{let t=this.getProvider();if(!t)return null;let e=await t.request?.({method:"eth_accounts"});if(Array.isArray(e)&&e.length>0&&typeof e[0]=="string"&&e[0])return e[0];let r=t?.selectedAddress||Array.isArray(t?.accounts)&&t.accounts[0];return typeof r=="string"&&r?r:null}catch{return null}}getActor(t){throw new Error("EVM wallets cannot provide IC actors. Use IC adapters for IC canister interactions.")}};function ft(){try{let a=typeof navigator<"u"?navigator:window?.navigator,t=String(a?.userAgent||"").toLowerCase();return/iphone|ipad|ipod|android|mobile|windows phone/.test(t)}catch{return!1}}function j(){try{let t=(typeof window<"u"?window:{}).ethereum;if(t&&Array.isArray(t.providers)){let e=t.providers.find(r=>r&&r.isRainbow);if(e)return e}return t&&t.isRainbow||ft()&&t&&typeof t.request=="function"?t:null}catch{return null}}var Y=class{constructor(t){this.id="rainbow";this.label="Rainbow";this.config=t.config||{}}getEvmProvider(){return j()}async isInstalled(){try{return!!j()}catch{return!1}}async isConnected(){try{let t=j();if(!t)return!1;let e=await t.request({method:"eth_accounts"});return Array.isArray(e)&&e.length>0}catch{return!1}}async connect(){let t=j();if(!t){if(typeof window<"u"&&ft()){try{let n=String(window.location?.href||""),c=`https://rnbwapp.com/browse/${encodeURIComponent(n)}`;try{window.dispatchEvent(new CustomEvent("icpay-sdk-wallet-deeplink",{detail:{wallet:"rainbow",url:c}}))}catch{}try{window.location.href=c}catch{try{window.open(c,"_self","noopener,noreferrer")}catch{}}}catch{}throw new Error("Opening Rainbow\u2026 If nothing happens, install Rainbow and try again.")}throw new Error("Rainbow not available")}let e=n=>new Promise(c=>setTimeout(c,n)),r=async()=>{try{let n=await t.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0)return n}catch{}try{let n=await t.request?.({method:"eth_requestAccounts"});if(Array.isArray(n)&&n.length>0)return n}catch(n){if(n&&(n.code===4001||n.code==="4001"))throw new Error("Connection request was rejected")}try{await t.request?.({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]});let n=await t.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0)return n}catch{}return[]},o=[];for(let n=0;n<3&&o.length===0;n++)t=j()||t,o=await r(),o.length===0&&await e(300);let i=Array.isArray(o)&&o[0]||"";if(!i)throw new Error("No account returned by Rainbow");return{owner:i,principal:i,connected:!0}}async disconnect(){try{let t=j();if(!t)return;try{await t.request?.({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]})}catch{}try{t.removeAllListeners?.("accountsChanged")}catch{}try{t.removeAllListeners?.("chainChanged")}catch{}try{t.removeAllListeners?.("disconnect")}catch{}}catch{}}async getPrincipal(){try{let t=j();if(!t)return null;let e=await t.request({method:"eth_accounts"});return Array.isArray(e)&&e[0]||""||null}catch{return null}}getActor(t){throw new Error("EVM wallets cannot provide IC actors. Use IC adapters for IC canister interactions.")}};function It(){try{let a=typeof navigator<"u"?navigator:window?.navigator,t=String(a?.userAgent||"").toLowerCase();return/iphone|ipad|ipod|android|mobile|windows phone/.test(t)}catch{return!1}}function m(){try{let t=(typeof window<"u"?window:{}).ethereum;if(t&&Array.isArray(t.providers)){let e=t.providers.find(r=>r&&r.isRabby);if(e)return e}return t&&t.isRabby||It()&&t&&typeof t.request=="function"?t:null}catch{return null}}var Z=class{constructor(t){this.id="rabby";this.label="Rabby";this.config=t.config||{}}getEvmProvider(){return m()}async isInstalled(){try{return!!m()}catch{return!1}}async isConnected(){try{let t=m();if(!t)return!1;let e=await t.request({method:"eth_accounts"});return Array.isArray(e)&&e.length>0}catch{return!1}}async connect(){let t=m();if(!t){if(typeof window<"u"&&It()){try{let n=String(window.location?.href||""),c=`rabby://browser?url=${encodeURIComponent(n)}`;try{window.dispatchEvent(new CustomEvent("icpay-sdk-wallet-deeplink",{detail:{wallet:"rabby",url:c}}))}catch{}try{window.location.href=c}catch{try{window.open(c,"_self","noopener,noreferrer")}catch{}}}catch{}throw new Error("Opening Rabby\u2026 If nothing happens, install Rabby and try again.")}throw new Error("Rabby not available")}let e=n=>new Promise(c=>setTimeout(c,n)),r=async()=>{try{let n=await t.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0)return n}catch{}try{let n=await t.request?.({method:"eth_requestAccounts"});if(Array.isArray(n)&&n.length>0)return n}catch(n){if(n&&(n.code===4001||n.code==="4001"))throw new Error("Connection request was rejected")}try{await t.request?.({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]});let n=await t.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0)return n}catch{}return[]},o=[];for(let n=0;n<3&&o.length===0;n++)t=m()||t,o=await r(),o.length===0&&await e(300);let i=Array.isArray(o)&&o[0]||"";if(!i)throw new Error("No account returned by Rabby");return{owner:i,principal:i,connected:!0}}async disconnect(){try{let t=m();if(!t)return;try{await t.request?.({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]})}catch{}try{t.removeAllListeners?.("accountsChanged")}catch{}try{t.removeAllListeners?.("chainChanged")}catch{}try{t.removeAllListeners?.("disconnect")}catch{}}catch{}}async getPrincipal(){try{let t=m();if(!t)return null;let e=await t.request({method:"eth_accounts"});return Array.isArray(e)&&e[0]||""||null}catch{return null}}getActor(t){throw new Error("EVM wallets cannot provide IC actors. Use IC adapters for IC canister interactions.")}};function ht(){try{let a=typeof navigator<"u"?navigator:window?.navigator,t=String(a?.userAgent||"").toLowerCase();return/iphone|ipad|ipod|android|mobile|windows phone/.test(t)}catch{return!1}}function L(){try{let a=typeof window<"u"?window:{};return a.phantom&&a.phantom.solana?a.phantom.solana:a.solana?a.solana:null}catch{return null}}var G=class{constructor(t){this.id="phantom";this.label="Phantom";this.config=t.config||{}}getEvmProvider(){return null}getSolanaProvider(){return L()}async isInstalled(){try{return ht()?!0:!!L()}catch{return!1}}async isConnected(){try{let t=L();if(!t)return!1;if(t.isConnected&&t.publicKey)return!0;try{return await t.connect(),!!t.publicKey}catch{return!1}}catch{return!1}}async connect(){let t=L();if(!t){if(typeof window<"u"&&ht()){let e=String(window.location?.href||""),r=String(window.location?.origin||e.replace(/\/[^/]*$/,"")||""),o=`https://phantom.app/ul/browse/${encodeURIComponent(e)}?ref=${encodeURIComponent(r)}`;try{window.dispatchEvent(new CustomEvent("icpay-sdk-wallet-deeplink",{detail:{wallet:"phantom",url:o}}))}catch{}try{window.location.href=o}catch{try{window.open(o,"_self","noopener,noreferrer")}catch{}}throw new Error("Opening Phantom\u2026 If nothing happens, install Phantom and try again.")}throw new Error("Phantom (Solana) not available")}try{let e=await t.connect(),r=String(e?.publicKey||t.publicKey||"");if(!r)throw new Error("No account returned by Phantom");return{owner:r,principal:r,connected:!0}}catch(e){throw e&&(e.code===4001||e.code==="4001")?new Error("Connection request was rejected"):new Error(e?.message||"Phantom connection failed")}}async disconnect(){try{let t=L();if(!t)return;try{await t.disconnect?.()}catch{}try{t.removeAllListeners?.("accountChanged")}catch{}try{t.removeAllListeners?.("connect")}catch{}try{t.removeAllListeners?.("disconnect")}catch{}}catch{}}async getPrincipal(){try{let t=L();return t&&t?.publicKey?String(t.publicKey):null}catch{return null}}getActor(t){throw new Error("EVM wallets cannot provide IC actors. Use IC adapters for IC canister interactions.")}};function Nt(){try{let a=typeof navigator<"u"?navigator:window?.navigator,t=String(a?.userAgent||"").toLowerCase();return/iphone|ipad|ipod|android|mobile|windows phone/.test(t)}catch{return!1}}function jt(a){try{let r=globalThis.Buffer;if(r)return new Uint8Array(r.from(a,"base64"))}catch{}let t=globalThis?.atob?globalThis.atob(a):"",e=new Uint8Array(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}function C(){try{let t=(typeof window<"u"?window:{}).solflare;return t?{isSolflare:!0,get publicKey(){return t.publicKey},get isConnected(){return t.isConnected},connect:(...r)=>t.connect?t.connect(...r):Promise.resolve(),disconnect:(...r)=>t.disconnect?t.disconnect(...r):Promise.resolve(),on:(...r)=>t.on?t.on(...r):void 0,off:(...r)=>t.off?t.off(...r):void 0,removeAllListeners:(...r)=>t.removeAllListeners?t.removeAllListeners(...r):void 0,request:async r=>{if(r?.method==="signAndSendTransaction"&&typeof t.signAndSendTransaction=="function"){let i=r.params||{};if(i?.transaction!=null){let n=typeof i.transaction=="string"?jt(i.transaction):i.transaction?.byteLength!=null?i.transaction:new Uint8Array(i.transaction);if(n.length>0){let c={serialize:()=>n};return await t.signAndSendTransaction(c)}}if(typeof t.request=="function")return t.request(r);throw new Error("Unsupported method")}if((r?.method==="signTransaction"||r?.method==="solana:signTransaction")&&typeof t.signTransaction=="function"){let i=r.params||{};if(i?.transaction!=null){let n=typeof i.transaction=="string"?jt(i.transaction):i.transaction?.byteLength!=null?i.transaction:new Uint8Array(i.transaction||[]);if(n.length>0){let c={serialize:()=>n};return await t.signTransaction(c)}}return null}if(typeof t.request=="function")return t.request(r);throw new Error("Unsupported method")}}:null}catch{return null}}var R=class{constructor(t){this.id="solflare";this.label="Solflare";this.config=t.config||{}}getEvmProvider(){return null}getSolanaProvider(){return C()}async isInstalled(){try{return Nt()?!0:!!C()}catch{return!1}}async isConnected(){try{let t=C();if(!t)return!1;if(t.isConnected&&t.publicKey)return!0;try{return await t.connect(),!!t.publicKey}catch{return!1}}catch{return!1}}async connect(){let t=C();if(!t){if(typeof window<"u"&&Nt()){let e=String(window.location?.href||""),r=`https://solflare.com/ul/v1/browse/${encodeURIComponent(e)}`;try{window.dispatchEvent(new CustomEvent("icpay-sdk-wallet-deeplink",{detail:{wallet:"solflare",url:r}}))}catch{}try{window.location.href=r}catch{try{window.open(r,"_self","noopener,noreferrer")}catch{}}throw new Error("Opening Solflare\u2026 If nothing happens, install Solflare and try again.")}throw new Error("Solflare (Solana) not available")}try{let e=await t.connect(),r=String(e?.publicKey||t.publicKey||"");if(!r)throw new Error("No account returned by Solflare");return{owner:r,principal:r,connected:!0}}catch(e){throw e&&(e.code===4001||e.code==="4001")?new Error("Connection request was rejected"):new Error(e?.message||"Solflare connection failed")}}async disconnect(){try{let t=C();if(!t)return;try{await t.disconnect?.()}catch{}try{t.removeAllListeners?.("accountChanged")}catch{}try{t.removeAllListeners?.("connect")}catch{}try{t.removeAllListeners?.("disconnect")}catch{}}catch{}}async getPrincipal(){try{let t=C();return t&&t?.publicKey?String(t.publicKey):null}catch{return null}}getActor(t){throw new Error("Solana wallets cannot provide IC actors. Use IC adapters for IC canister interactions.")}};function mt(){try{let a=typeof navigator<"u"?navigator:window?.navigator,t=String(a?.userAgent||"").toLowerCase();return/iphone|ipad|ipod|android|mobile|windows phone/.test(t)}catch{return!1}}function D(){try{let a=typeof window<"u"?window:{},t=a.okxwallet;if(t&&(t.isOkxWallet||t.ethereum))return t.ethereum||t;let e=a.ethereum;if(e&&Array.isArray(e.providers)){let r=e.providers.find(o=>o&&(o.isOkxWallet||o?.provider?.isOkxWallet));if(r)return r}return e&&(e.isOkxWallet||e?.provider?.isOkxWallet)||mt()&&e&&typeof e.request=="function"?e:null}catch{return null}}var B=class{constructor(t){this.id="okx";this.label="OKX Wallet";this.config=t.config||{}}getEvmProvider(){return D()}async isInstalled(){try{return!!D()}catch{return!1}}async isConnected(){try{let t=D();if(!t)return!1;let e=await t.request({method:"eth_accounts"});return Array.isArray(e)&&e.length>0}catch{return!1}}async connect(){let t=D();if(!t){if(typeof window<"u"&&mt()){try{let n=String(window.location?.href||""),c=`okx://wallet/dapp/url?dappUrl=${encodeURIComponent(n)}`,s=`https://web3.okx.com/download?deeplink=${encodeURIComponent(c)}`;try{window.dispatchEvent(new CustomEvent("icpay-sdk-wallet-deeplink",{detail:{wallet:"okx",url:s}}))}catch{}try{window.location.href=s}catch{try{window.open(s,"_self","noopener,noreferrer")}catch{}}}catch{}throw new Error("Opening OKX Wallet\u2026 If nothing happens, install OKX Wallet and try again.")}throw new Error("OKX Wallet not available")}let e=n=>new Promise(c=>setTimeout(c,n)),r=async()=>{try{let n=await t.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0)return n}catch{}try{let n=await t.request?.({method:"eth_requestAccounts"});if(Array.isArray(n)&&n.length>0)return n}catch(n){if(n&&(n.code===4001||n.code==="4001"))throw new Error("Connection request was rejected")}try{await t.request?.({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]});let n=await t.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0)return n}catch{}return[]},o=[];for(let n=0;n<3&&o.length===0;n++)t=D()||t,o=await r(),o.length===0&&await e(300);let i=Array.isArray(o)&&o[0]||"";if(!i)throw new Error("No account returned by OKX Wallet");return{owner:i,principal:i,connected:!0}}async disconnect(){try{let t=D();if(!t)return;try{await t.request?.({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]})}catch{}try{t.removeAllListeners?.("accountsChanged")}catch{}try{t.removeAllListeners?.("chainChanged")}catch{}try{t.removeAllListeners?.("disconnect")}catch{}}catch{}}async getPrincipal(){try{let t=D();if(!t)return null;let e=await t.request({method:"eth_accounts"});return Array.isArray(e)&&e[0]||""||null}catch{return null}}getActor(t){throw new Error("EVM wallets cannot provide IC actors. Use IC adapters for IC canister interactions.")}};function Dt(){try{let a=typeof navigator<"u"?navigator:window?.navigator,t=String(a?.userAgent||"").toLowerCase();return/iphone|ipad|ipod|android|mobile|windows phone/.test(t)}catch{return!1}}function T(){try{let a=typeof window<"u"?window:{};if(a.trustwallet?.ethereum)return a.trustwallet.ethereum;if(a.trustWallet?.ethereum)return a.trustWallet.ethereum;if(a.trustwallet&&typeof a.trustwallet.request=="function")return a.trustwallet;if(a.trustWallet&&typeof a.trustWallet.request=="function")return a.trustWallet;let t=a.ethereum;if(t&&Array.isArray(t.providers)){let r=t.providers.find(o=>o&&(o.isTrust||o?.isTrustWallet));if(r)return r}if(t&&(t.isTrust||t?.isTrustWallet))return t;let e=String((typeof navigator<"u"?navigator:a?.navigator)?.userAgent||"").toLowerCase();return Dt()&&(e.includes("trust")||e.includes("trustwallet"))&&t&&typeof t.request=="function"?t:null}catch{return null}}var q=class{constructor(t){this.id="trust";this.label="Trust Wallet";this.config=t.config||{}}getEvmProvider(){return T()}async isInstalled(){try{return!!T()}catch{return!1}}async isConnected(){try{let t=T();if(!t)return!1;let e=await t.request({method:"eth_accounts"});return Array.isArray(e)&&e.length>0}catch{return!1}}async connect(){let t=T();if(!t){if(typeof window<"u"&&Dt()){try{let n=String(window.location?.href||""),c=`https://link.trustwallet.com/open_url?coin_id=60&url=${encodeURIComponent(n)}`;try{window.dispatchEvent(new CustomEvent("icpay-sdk-wallet-deeplink",{detail:{wallet:"trust",url:c}}))}catch{}try{window.location.href=c}catch{try{window.open(c,"_self","noopener,noreferrer")}catch{}}}catch{}throw new Error("Opening Trust Wallet\u2026 If nothing happens, install Trust Wallet and try again.")}throw new Error("Trust Wallet not available")}let e=n=>new Promise(c=>setTimeout(c,n)),r=async()=>{try{let n=await t.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0)return n}catch{}try{let n=await t.request?.({method:"eth_requestAccounts"});if(Array.isArray(n)&&n.length>0)return n}catch(n){if(n&&(n.code===4001||n.code==="4001"))throw new Error("Connection request was rejected")}try{await t.request?.({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]});let n=await t.request?.({method:"eth_accounts"});if(Array.isArray(n)&&n.length>0)return n}catch{}return[]},o=[];for(let n=0;n<3&&o.length===0;n++)t=T()||t,o=await r(),o.length===0&&await e(300);let i=Array.isArray(o)&&o[0]||"";if(!i)throw new Error("No account returned by Trust Wallet");return{owner:i,principal:i,connected:!0}}async disconnect(){try{let t=T();if(!t)return;try{t.removeAllListeners?.("accountsChanged")}catch{}try{t.removeAllListeners?.("chainChanged")}catch{}try{t.removeAllListeners?.("disconnect")}catch{}}catch{}}async getPrincipal(){try{let t=T();if(!t)return null;let e=await t.request({method:"eth_accounts"});return Array.isArray(e)&&e[0]||""||null}catch{return null}}getActor(t){throw new Error("EVM wallets cannot provide IC actors. Use IC adapters for IC canister interactions.")}};function Tt(){try{let a=typeof navigator<"u"?navigator:window?.navigator,t=String(a?.userAgent||"").toLowerCase();return/iphone|ipad|ipod|android|mobile|windows phone/.test(t)}catch{return!1}}function z(){try{let a=typeof window<"u"?window:{},t=r=>{try{let n=globalThis.Buffer;if(n)return new Uint8Array(n.from(r,"base64"))}catch{}let o=globalThis?.atob?globalThis.atob(r):"",i=new Uint8Array(o.length);for(let n=0;n<o.length;n++)i[n]=o.charCodeAt(n);return i};if(a.backpack?.solana){let r=a.backpack.solana;return{isBackpack:!0,get publicKey(){return r.publicKey},get isConnected(){return r.isConnected},connect:(...i)=>r.connect?r.connect(...i):Promise.resolve(),disconnect:(...i)=>r.disconnect?r.disconnect(...i):Promise.resolve(),on:(...i)=>r.on?r.on(...i):void 0,off:(...i)=>r.off?r.off(...i):void 0,removeAllListeners:(...i)=>r.removeAllListeners?r.removeAllListeners(...i):void 0,request:async i=>{if(i&&i.method==="signAndSendTransaction"&&typeof r.signAndSendTransaction=="function"){let n=i.params||{};if(n&&n.transaction!=null){let c=typeof n.transaction=="string"?t(n.transaction):n.transaction,s={serialize:()=>c};return await r.signAndSendTransaction(s)}if(typeof r.request=="function")return r.request(i);throw new Error("Unsupported method")}if(typeof r.request=="function")return r.request(i);throw new Error("Unsupported method")}}}if(a.xnft?.solana)return a.xnft.solana;let e=a.solana;if(e&&(e.isBackpack===!0||e?.provider?.isBackpack===!0)){let r=e;return{isBackpack:!0,get publicKey(){return r.publicKey},get isConnected(){return r.isConnected},connect:(...i)=>r.connect?r.connect(...i):Promise.resolve(),disconnect:(...i)=>r.disconnect?r.disconnect(...i):Promise.resolve(),on:(...i)=>r.on?r.on(...i):void 0,off:(...i)=>r.off?r.off(...i):void 0,removeAllListeners:(...i)=>r.removeAllListeners?r.removeAllListeners(...i):void 0,request:async i=>{if(i&&i.method==="signAndSendTransaction"&&typeof r.signAndSendTransaction=="function"){let n=i.params||{};if(n&&n.transaction!=null){let c=typeof n.transaction=="string"?t(n.transaction):n.transaction,s={serialize:()=>c};return await r.signAndSendTransaction(s)}if(typeof r.request=="function")return r.request(i);throw new Error("Unsupported method")}if(typeof r.request=="function")return r.request(i);throw new Error("Unsupported method")}}}return Tt()&&e&&typeof e.connect=="function"?e:null}catch{return null}}var F=class{constructor(t){this.id="backpack";this.label="Backpack";this.config=t.config||{}}getSolanaProvider(){return z()}async isInstalled(){try{return!!z()}catch{return!1}}async isConnected(){try{let t=z();if(!t)return!1;if(t.isConnected&&t.publicKey)return!0;try{return await t.connect(),!!t.publicKey}catch{return!1}}catch{return!1}}async connect(){let t=z();if(!t){if(typeof window<"u"&&Tt())try{if(t=z(),!t)throw new Error("Backpack (Solana) not available")}catch{throw new Error("Backpack (Solana) not available")}throw new Error("Backpack (Solana) not available")}try{let e=await t.connect(),r=String(e?.publicKey||t.publicKey||"");if(!r)throw new Error("No account returned by Backpack");return{owner:r,principal:r,connected:!0}}catch(e){throw e&&(e.code===4001||e.code==="4001")?new Error("Connection request was rejected"):new Error(e?.message||"Backpack connection failed")}}async disconnect(){try{let t=z();if(!t)return;try{await t.disconnect?.()}catch{}try{t.removeAllListeners?.("accountChanged")}catch{}try{t.removeAllListeners?.("connect")}catch{}try{t.removeAllListeners?.("disconnect")}catch{}}catch{}}async getPrincipal(){try{let t=z();return t&&t?.publicKey?String(t.publicKey):null}catch{return null}}getActor(t){throw new Error("Solana wallets cannot provide IC actors. Use IC adapters for IC canister interactions.")}};function ee(a){if(!a)return null;if(typeof a=="string")return a;try{let t=a;if(typeof t.toText=="function")return t.toText();if(typeof t.toString=="function")return t.toString()}catch{}return null}function ne(a){let t={};return a&&(t.host=a),t}function re(a){return a&&typeof a=="string"&&a.trim()?a:"https://icp-api.io"}var K=class{constructor(t){this._activeAdapter=null;this._account=null;this._walletConnectAdapter=null;this._config=t||{};let e={};e.metamask={id:"metamask",label:"MetaMask",icon:null,enabled:!0,adapter:k},e.coinbase={id:"coinbase",label:"Coinbase Wallet",icon:null,enabled:!0,adapter:Q},e.walletconnect={id:"walletconnect",label:"WalletConnect",icon:null,enabled:!1,adapter:x},e.phantom={id:"phantom",label:"Phantom",icon:null,enabled:!0,adapter:G},e.solflare={id:"solflare",label:"Solflare",icon:null,enabled:!0,adapter:R},e.backpack={id:"backpack",label:"Backpack",icon:null,enabled:!0,adapter:F},e.rainbow={id:"rainbow",label:"Rainbow",icon:null,enabled:!1,adapter:Y},e.rabby={id:"rabby",label:"Rabby",icon:null,enabled:!0,adapter:Z},e.brave={id:"brave",label:"Brave Wallet",icon:null,enabled:!0,adapter:W},e.okx={id:"okx",label:"OKX Wallet",icon:null,enabled:!0,adapter:B},e.trust={id:"trust",label:"Trust Wallet",icon:null,enabled:!0,adapter:q},e.oisy={id:"oisy",label:"Oisy",icon:null,enabled:!0,adapter:P},e.nfid={id:"nfid",label:"NFID",icon:null,enabled:!1,adapter:O},e.ii={id:"ii",label:"Internet Identity",icon:null,enabled:!1,adapter:E},e.plug={id:"plug",label:"Plug",icon:null,enabled:!0,adapter:S};let r=this._config.adapters=this._config.adapters||{},o=re(this._config.icHost);this._config.icHost||(this._config.icHost=o),r.nfid=r.nfid||{},r.nfid.config={signerUrl:r.nfid.config?.signerUrl||"https://nfid.one/rpc",hostUrl:r.nfid.config?.hostUrl||o,transport:{...r.nfid.config?.transport||{}}},r.oisy=r.oisy||{},r.oisy.config={signerUrl:r.oisy.config?.signerUrl||"https://oisy.com/sign",hostUrl:r.oisy.config?.hostUrl||o,transport:{...r.oisy.config?.transport||{}}},r.walletconnect=r.walletconnect||{},r.walletconnect.config={...r.walletconnect.config||{},projectId:r.walletconnect.config?.projectId||"",chains:r.walletconnect.config?.chains||[8453,84532]};try{let i=r.walletconnect?.enabled!==!1,n=String(r.walletconnect?.config?.projectId||"").trim();i&&!n&&(e.walletconnect.enabled=!1)}catch{}r.plug=r.plug||{},r.ii=r.ii||{},Object.keys(e).forEach(i=>{let n=r[i];n&&typeof n.enabled=="boolean"&&(e[i].enabled=!!n.enabled)}),this._adapters=e}isMobileBrowser(){try{let t=typeof navigator<"u"?navigator:globalThis?.navigator,e=String(t?.userAgent||"").toLowerCase();return/iphone|ipad|ipod|android|mobile|windows phone/.test(e)}catch{return!1}}get config(){return this._config}get account(){return this._account}getEnabledWallets(){let t=Array.isArray(this._config.chainTypes)?this._config.chainTypes.map(c=>String(c).toLowerCase()):null,e={oisy:"ic",nfid:"ic",ii:"ic",plug:"ic",metamask:"evm",walletconnect:"evm",coinbase:"evm",brave:"evm",rainbow:"evm",rabby:"evm",okx:"evm",trust:"evm",phantom:"sol",solflare:"sol",backpack:"sol"},r=Object.values(this._adapters).map((c,s)=>({a:c,idx:s})).filter(({a:c})=>{if(c.enabled===!1)return!1;if(c.id==="walletconnect")try{if(!String(this._config?.adapters?.walletconnect?.config?.projectId||"").trim())return!1}catch{return!1}if(c.id==="rabby"&&this.isMobileBrowser()||c.id==="backpack"&&this.isMobileBrowser()||c.id==="brave"&&this.isMobileBrowser()||c.id==="plug"&&this.isMobileBrowser())return!1;if(Array.isArray(t)&&t.length>0){let s=e[c.id];if(!s||!t.includes(s))return!1}return!0}),o=["sol","evm","ic"],i=t&&t.length>0?t:o,n={};return i.forEach((c,s)=>{n[c]=s}),r.sort((c,s)=>{let M=e[c.a.id],d=e[s.a.id],p=M in n?n[M]:Number.MAX_SAFE_INTEGER,l=d in n?n[d]:Number.MAX_SAFE_INTEGER;return p!==l?p-l:c.idx-s.idx}),r.map(({a:c})=>({id:c.id,label:c.label,icon:this.resolveIcon(c.id,c.icon),enabled:c.enabled,adapter:c.adapter,config:this._config.adapters&&this._config.adapters[c.id]?.config||{}}))}resolveIcon(t,e){return U(t,e||null)}getEvmProvider(){try{let t=this._activeAdapter;if(t&&typeof t.getEvmProvider=="function"){let e=t.getEvmProvider();if(e)return e;if(t.id==="walletconnect")return null}}catch{}try{return(typeof window<"u"?window.ethereum:null)||null}catch{return null}}getSolanaProvider(){try{let t=this._activeAdapter;if(t&&typeof t.getSolanaProvider=="function"){let e=t.getSolanaProvider();if(e)return e}}catch{}try{let t=typeof window<"u"?window:{};return t?.backpack?.solana?t.backpack.solana:t?.xnft?.solana?t.xnft.solana:t?.solana&&(t.solana.isBackpack===!0||t?.solana?.provider?.isBackpack===!0)?t.solana:t?.phantom?.solana?t.phantom.solana:t?.solflare?t.solflare:t?.solana||null}catch{return null}}async generateWalletConnectQr(t){let e=this._adapters.walletconnect;if(!e||e.enabled===!1)return null;this._walletConnectAdapter||(this._walletConnectAdapter=new x({config:this._config}));let r=t?.onConnected;return this._walletConnectAdapter.getOrCreateQrDataUrl({onConnected:o=>{this._activeAdapter=this._walletConnectAdapter,this._account={owner:o?.principal??o?.owner??null,principal:o?.principal??o?.owner??null,connected:!0};try{r?.(o)}catch{}}})}async hasCoinbaseAccounts(){try{let t=this._adapters.coinbase;if(!t||t.enabled===!1)return!1;let r=new t.adapter({config:this._config}).getEvmProvider?.();if(!r||typeof r.request!="function")return!1;let o=await r.request({method:"eth_accounts"});return Array.isArray(o)&&o.length>0}catch{return!1}}connect(t){let e=(t||"").toLowerCase(),r=e?this._adapters[e]:void 0;if(!r||r.enabled===!1)throw new Error("No wallets available");let o=e==="walletconnect"&&this._walletConnectAdapter?this._walletConnectAdapter:new r.adapter({config:this._config});return this._activeAdapter=o,o.connect().then(i=>{let n=ee(i?.principal||i?.owner);return this._account={owner:n,principal:n,connected:!0},this._account})}async disconnect(){try{await this._activeAdapter?.disconnect()}catch{}this._activeAdapter?.id==="walletconnect"&&(this._walletConnectAdapter=null),this._activeAdapter=null,this._account=null}getActor(t){if(!this._activeAdapter){let e=new te(ne(this._config.icHost));return $t.createActor(t.idl,{agent:e,canisterId:t.canisterId})}return this._activeAdapter.getActor(t)}},Cn=a=>new K(a);export{K as a,Cn as b};
|
|
2
|
+
//# sourceMappingURL=chunk-YNVNWF7W.js.map
|