UNPKG

@tronweb3/tronwallet-adapter-gatewallet

Version:

Wallet adapter for Gate Wallet app and extension.

2 lines (1 loc) 39.1 kB
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self)["@tronweb3/tronwallet-adapter-gatewallet"]=e()}(this,(function(){"use strict";var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function e(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var n={},o={},r={},i={},s={exports:{}};!function(t){var e=Object.prototype.hasOwnProperty,n="~";function o(){}function r(t,e,n){this.fn=t,this.context=e,this.once=n||!1}function i(t,e,o,i,s){if("function"!=typeof o)throw new TypeError("The listener must be a function");var a=new r(o,i||t,s),l=n?n+e:e;return t._events[l]?t._events[l].fn?t._events[l]=[t._events[l],a]:t._events[l].push(a):(t._events[l]=a,t._eventsCount++),t}function s(t,e){0==--t._eventsCount?t._events=new o:delete t._events[e]}function a(){this._events=new o,this._eventsCount=0}Object.create&&(o.prototype=Object.create(null),(new o).__proto__||(n=!1)),a.prototype.eventNames=function(){var t,o,r=[];if(0===this._eventsCount)return r;for(o in t=this._events)e.call(t,o)&&r.push(n?o.slice(1):o);return Object.getOwnPropertySymbols?r.concat(Object.getOwnPropertySymbols(t)):r},a.prototype.listeners=function(t){var e=n?n+t:t,o=this._events[e];if(!o)return[];if(o.fn)return[o.fn];for(var r=0,i=o.length,s=new Array(i);r<i;r++)s[r]=o[r].fn;return s},a.prototype.listenerCount=function(t){var e=n?n+t:t,o=this._events[e];return o?o.fn?1:o.length:0},a.prototype.emit=function(t,e,o,r,i,s){var a=n?n+t:t;if(!this._events[a])return!1;var l,c,d=this._events[a],h=arguments.length;if(d.fn){switch(d.once&&this.removeListener(t,d.fn,void 0,!0),h){case 1:return d.fn.call(d.context),!0;case 2:return d.fn.call(d.context,e),!0;case 3:return d.fn.call(d.context,e,o),!0;case 4:return d.fn.call(d.context,e,o,r),!0;case 5:return d.fn.call(d.context,e,o,r,i),!0;case 6:return d.fn.call(d.context,e,o,r,i,s),!0}for(c=1,l=new Array(h-1);c<h;c++)l[c-1]=arguments[c];d.fn.apply(d.context,l)}else{var u,w=d.length;for(c=0;c<w;c++)switch(d[c].once&&this.removeListener(t,d[c].fn,void 0,!0),h){case 1:d[c].fn.call(d[c].context);break;case 2:d[c].fn.call(d[c].context,e);break;case 3:d[c].fn.call(d[c].context,e,o);break;case 4:d[c].fn.call(d[c].context,e,o,r);break;default:if(!l)for(u=1,l=new Array(h-1);u<h;u++)l[u-1]=arguments[u];d[c].fn.apply(d[c].context,l)}}return!0},a.prototype.on=function(t,e,n){return i(this,t,e,n,!1)},a.prototype.once=function(t,e,n){return i(this,t,e,n,!0)},a.prototype.removeListener=function(t,e,o,r){var i=n?n+t:t;if(!this._events[i])return this;if(!e)return s(this,i),this;var a=this._events[i];if(a.fn)a.fn!==e||r&&!a.once||o&&a.context!==o||s(this,i);else{for(var l=0,c=[],d=a.length;l<d;l++)(a[l].fn!==e||r&&!a[l].once||o&&a[l].context!==o)&&c.push(a[l]);c.length?this._events[i]=1===c.length?c[0]:c:s(this,i)}return this},a.prototype.removeAllListeners=function(t){var e;return t?(e=n?n+t:t,this._events[e]&&s(this,e)):(this._events=new o,this._eventsCount=0),this},a.prototype.off=a.prototype.removeListener,a.prototype.addListener=a.prototype.on,a.prefixed=n,a.EventEmitter=a,t.exports=a}(s);var a=s.exports,l=t&&t.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(i,"__esModule",{value:!0}),i.Adapter=i.AdapterState=i.WalletReadyState=i.EventEmitter=void 0;const c=l(a);var d,h;i.EventEmitter=c.default,function(t){t.Loading="Loading",t.NotFound="NotFound",t.Found="Found"}(d||(i.WalletReadyState=d={})),function(t){t.Loading="Loading",t.NotFound="NotFound",t.Disconnect="Disconnected",t.Connected="Connected"}(h||(i.AdapterState=h={}));class u extends c.default{get connected(){return this.state===h.Connected}disconnect(){return console.info("The current adapter doesn't support disconnect by DApp."),Promise.resolve()}multiSign(...t){return Promise.reject("The current wallet doesn't support multiSign.")}switchChain(t){return Promise.reject("The current wallet doesn't support switch chain.")}}i.Adapter=u;var w={};Object.defineProperty(w,"__esModule",{value:!0}),w.WalletGetNetworkError=w.WalletSwitchChainError=w.WalletWindowClosedError=w.WalletWalletLoadError=w.WalletSignTransactionError=w.WalletSignMessageError=w.WalletDisconnectionError=w.WalletConnectionError=w.WalletDisconnectedError=w.WalletNotSelectedError=w.WalletNotFoundError=w.WalletError=void 0;class p extends Error{constructor(t,e){super(t),this.error=e}}w.WalletError=p;w.WalletNotFoundError=class extends p{constructor(){super(...arguments),this.name="WalletNotFoundError",this.message="The wallet is not found."}};w.WalletNotSelectedError=class extends p{constructor(){super(...arguments),this.name="WalletNotSelectedError",this.message="No wallet is selected. Please select a wallet."}};w.WalletDisconnectedError=class extends p{constructor(){super(...arguments),this.name="WalletDisconnectedError",this.message="The wallet is disconnected. Please connect first."}};w.WalletConnectionError=class extends p{constructor(){super(...arguments),this.name="WalletConnectionError"}};w.WalletDisconnectionError=class extends p{constructor(){super(...arguments),this.name="WalletDisconnectionError"}};w.WalletSignMessageError=class extends p{constructor(){super(...arguments),this.name="WalletSignMessageError"}};w.WalletSignTransactionError=class extends p{constructor(){super(...arguments),this.name="WalletSignTransactionError"}};w.WalletWalletLoadError=class extends p{constructor(){super(...arguments),this.name="WalletWalletLoadError"}};w.WalletWindowClosedError=class extends p{constructor(){super(...arguments),this.name="WalletWindowClosedError",this.message="The QR window is closed."}};w.WalletSwitchChainError=class extends p{constructor(){super(...arguments),this.name="WalletSwitchChainError"}};w.WalletGetNetworkError=class extends p{constructor(){super(...arguments),this.name="WalletGetNetworkError"}};var A,f,v={};Object.defineProperty(v,"__esModule",{value:!0}),v.ChainNetwork=v.NetworkType=void 0,function(t){t.Mainnet="Mainnet",t.Shasta="Shasta",t.Nile="Nile",t.Unknown="Unknown"}(A||(v.NetworkType=A={})),function(t){t.Mainnet="Mainnet",t.Shasta="Shasta",t.Nile="Nile"}(f||(v.ChainNetwork=f={}));var g={};function y(){return"undefined"!=typeof window&&"undefined"!=typeof document&&"undefined"!=typeof navigator}Object.defineProperty(g,"__esModule",{value:!0}),g.isInBrowser=y,g.checkAdapterState=function(t){if(!y())return;const e=[];function n(){for(const t of e)t()}function o(){t()&&n()}const r=setInterval(o,500);e.push((()=>clearInterval(r))),"loading"===document.readyState&&(document.addEventListener("DOMContentLoaded",o,{once:!0}),e.push((()=>document.removeEventListener("DOMContentLoaded",o))));"complete"!==document.readyState&&(window.addEventListener("load",o,{once:!0}),e.push((()=>window.removeEventListener("load",o))));o(),setTimeout(n,6e4)},g.isInMobileBrowser=function(){return"undefined"!=typeof navigator&&navigator.userAgent.match(/Android|webOS|iPhone|iPad|iPod|BlackBerry|Windows Phone/i)},function(e){var n=t&&t.__createBinding||(Object.create?function(t,e,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(e,n);r&&!("get"in r?!e.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,o,r)}:function(t,e,n,o){void 0===o&&(o=n),t[o]=e[n]}),o=t&&t.__exportStar||function(t,e){for(var o in t)"default"===o||Object.prototype.hasOwnProperty.call(e,o)||n(e,t,o)};Object.defineProperty(e,"__esModule",{value:!0}),o(i,e),o(w,e),o(v,e),o(g,e)}(r);var W={},m={},I={},k=t&&t.__awaiter||function(t,e,n,o){return new(n||(n=Promise))((function(r,i){function s(t){try{l(o.next(t))}catch(t){i(t)}}function a(t){try{l(o.throw(t))}catch(t){i(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(s,a)}l((o=o.apply(t,e||[])).next())}))};Object.defineProperty(I,"__esModule",{value:!0}),I.supportTron=S,I.supportTronLink=E,I.isInTronLinkApp=N,I.openTronLink=function({dappIcon:t,dappName:e}={dappIcon:"",dappName:""}){if(!E()&&(0,b.isInMobileBrowser)()&&!N()){let n="",o="";try{n=document.title;const t=document.querySelector('link[rel*="icon"]');t&&(o=new URL(t.getAttribute("href")||"",location.href).toString())}catch(t){}const{origin:r,pathname:i,search:s,hash:a}=window.location,l=r+i+s+(a.includes("?")?a:`${a}?_=1`),c={action:"open",actionId:Date.now()+"",callbackUrl:"http://someurl.com",dappIcon:t||o,dappName:e||n,url:l,protocol:"TronLink",version:"1.0",chainId:"0x2b6653dc"};return window.location.href=`tronlinkoutside://pull.activity?param=${encodeURIComponent(JSON.stringify(c))}`,!0}return!1},I.waitTronwebReady=function(t){return k(this,void 0,void 0,(function*(){return new Promise(((e,n)=>{const o=setInterval((()=>{t.tronWeb&&(clearInterval(o),clearTimeout(r),e())}),50),r=setTimeout((()=>{clearInterval(o),n("`window.tron.tronweb` is not ready.")}),2e3)}))}))};const b=r;function S(){return!(!window.tron||!window.tron.isTronLink)}function E(){return!!(S()||window.tronLink||window.tronWeb)}function N(){return(0,b.isInBrowser)()&&void 0!==window.iTron}!function(e){var n=t&&t.__awaiter||function(t,e,n,o){return new(n||(n=Promise))((function(r,i){function s(t){try{l(o.next(t))}catch(t){i(t)}}function a(t){try{l(o.throw(t))}catch(t){i(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(s,a)}l((o=o.apply(t,e||[])).next())}))};Object.defineProperty(e,"__esModule",{value:!0}),e.TronLinkAdapter=e.TronLinkAdapterName=e.chainIdNetworkMap=void 0,e.getNetworkInfoByTronWeb=s;const o=r,i=I;function s(t){return n(this,void 0,void 0,(function*(){var n,r,i;const{blockID:s=""}=yield t.trx.getBlockByNumber(0),a=`0x${s.slice(-8)}`;return{networkType:e.chainIdNetworkMap[a]||o.NetworkType.Unknown,chainId:a,fullNode:(null===(n=t.fullNode)||void 0===n?void 0:n.host)||"",solidityNode:(null===(r=t.solidityNode)||void 0===r?void 0:r.host)||"",eventServer:(null===(i=t.eventServer)||void 0===i?void 0:i.host)||""}}))}e.chainIdNetworkMap={"0x2b6653dc":o.NetworkType.Mainnet,"0x94a9059e":o.NetworkType.Shasta,"0xcd8690dc":o.NetworkType.Nile},e.TronLinkAdapterName="TronLink";class a extends o.Adapter{constructor(t={}){super(),this.name=e.TronLinkAdapterName,this.url="https://www.tronlink.org/",this.icon="data:image/png;base64,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",this._readyState=(0,o.isInBrowser)()?o.WalletReadyState.Loading:o.WalletReadyState.NotFound,this._state=o.AdapterState.Loading,this._supportNewTronProtocol=!1,this._tronLinkMessageHandler=t=>{var e,n,r,i,s;const a=null===(e=t.data)||void 0===e?void 0:e.message;if(a)if("accountsChanged"===a.action)setTimeout((()=>{var t;const e=this.address||"";if(null===(t=this._wallet)||void 0===t?void 0:t.ready){const t=a.data.address;this.setAddress(t),this.setState(o.AdapterState.Connected)}else this.setAddress(null),this.setState(o.AdapterState.Disconnect);this.emit("accountsChanged",this.address||"",e),!e&&this.address?this.emit("connect",this.address):e&&!this.address&&this.emit("disconnect")}),200);else if("setNode"===a.action)this.emit("chainChanged",{chainId:(null===(r=null===(n=a.data)||void 0===n?void 0:n.node)||void 0===r?void 0:r.chainId)||""});else if("connect"===a.action){const t=(null===(s=null===(i=this._wallet.tronWeb)||void 0===i?void 0:i.defaultAddress)||void 0===s?void 0:s.base58)||"";this.setAddress(t),this.setState(o.AdapterState.Connected),this.emit("connect",t)}else"disconnect"===a.action&&(this.setAddress(null),this.setState(o.AdapterState.Disconnect),this.emit("disconnect"))},this._onChainChanged=t=>{this.emit("chainChanged",t)},this._onAccountsChanged=()=>{var t,e,n;const r=this.address||"",i=(null===(t=this._wallet)||void 0===t?void 0:t.tronWeb)&&(null===(n=null===(e=this._wallet)||void 0===e?void 0:e.tronWeb.defaultAddress)||void 0===n?void 0:n.base58)||"";if(i){const t=i;this.setAddress(t),this.setState(o.AdapterState.Connected)}else this.setAddress(null),this.setState(o.AdapterState.Disconnect);this.emit("accountsChanged",this.address||"",r),!r&&this.address?this.emit("connect",this.address):r&&!this.address&&this.emit("disconnect")},this._checkPromise=null,this._updateWallet=()=>{var t,e,n,r,i,s,a,l;let c=this.state,d=this.address;(0,o.isInMobileBrowser)()?(window.tronLink?this._wallet=window.tronLink:this._wallet={ready:!!(null===(t=window.tronWeb)||void 0===t?void 0:t.defaultAddress),tronWeb:window.tronWeb,request:()=>Promise.resolve(!0)},d=(null===(n=null===(e=this._wallet.tronWeb)||void 0===e?void 0:e.defaultAddress)||void 0===n?void 0:n.base58)||null,c=d?o.AdapterState.Connected:o.AdapterState.Disconnect):window.tron&&window.tron.isTronLink?(this._supportNewTronProtocol=!0,this._wallet=window.tron,this._listenTronEvent(),d=this._wallet.tronWeb&&(null===(i=null===(r=this._wallet.tronWeb)||void 0===r?void 0:r.defaultAddress)||void 0===i?void 0:i.base58)||null,c=d?o.AdapterState.Connected:o.AdapterState.Disconnect):window.tronLink?(this._wallet=window.tronLink,this._listenTronLinkEvent(),d=(null===(a=null===(s=this._wallet.tronWeb)||void 0===s?void 0:s.defaultAddress)||void 0===a?void 0:a.base58)||null,c=this._wallet.ready?o.AdapterState.Connected:o.AdapterState.Disconnect):window.tronWeb?(this._wallet={ready:window.tronWeb.ready,tronWeb:window.tronWeb,request:()=>Promise.resolve(!0)},d=(null===(l=this._wallet.tronWeb.defaultAddress)||void 0===l?void 0:l.base58)||null,c=this._wallet.ready?o.AdapterState.Connected:o.AdapterState.Disconnect):(this._wallet=null,d=null,c=o.AdapterState.NotFound),(0,o.isInMobileBrowser)()&&c===o.AdapterState.Disconnect&&this.checkForWalletReadyForApp(),this.setAddress(d),this.setState(c)},this.checkReadyInterval=null;const{checkTimeout:n=3e4,dappIcon:r="",dappName:s="",openUrlWhenWalletNotFound:a=!0,openTronLinkAppOnMobile:l=!0}=t;if("number"!=typeof n)throw new Error("[TronLinkAdapter] config.checkTimeout should be a number");if(this.config={checkTimeout:n,openTronLinkAppOnMobile:l,openUrlWhenWalletNotFound:a,dappIcon:r,dappName:s},this._connecting=!1,this._wallet=null,this._address=null,!(0,o.isInBrowser)())return this._readyState=o.WalletReadyState.NotFound,void this.setState(o.AdapterState.NotFound);(0,i.supportTron)()||(0,o.isInMobileBrowser)()&&(window.tronLink||window.tronWeb)?(this._readyState=o.WalletReadyState.Found,this._updateWallet()):this._checkWallet().then((()=>{this.connected&&this.emit("connect",this.address||"")}))}get address(){return this._address}get state(){return this._state}get readyState(){return this._readyState}get connecting(){return this._connecting}network(){return n(this,void 0,void 0,(function*(){var t;try{if(yield this._checkWallet(),this.state!==o.AdapterState.Connected)throw new o.WalletDisconnectedError;const e=(null===(t=this._wallet)||void 0===t?void 0:t.tronWeb)||window.tronWeb;if(!e)throw new o.WalletDisconnectedError;try{return yield s(e)}catch(t){throw new o.WalletGetNetworkError(null==t?void 0:t.message,t)}}catch(t){throw this.emit("error",t),t}}))}connect(){return n(this,void 0,void 0,(function*(){var t,e;try{if(this.checkIfOpenTronLink(),this.connected||this.connecting)return;if(yield this._checkWallet(),this.state===o.AdapterState.NotFound)throw!1!==this.config.openUrlWhenWalletNotFound&&(0,o.isInBrowser)()&&window.open(this.url,"_blank"),new o.WalletNotFoundError;if(!this._wallet)return;if(this._connecting=!0,this._supportNewTronProtocol){const t=this._wallet;try{const e=(yield t.request({method:"eth_requestAccounts"}))[0];this.setAddress(e),this.setState(o.AdapterState.Connected),this._listenTronEvent(),this._wallet.tronWeb||(yield(0,i.waitTronwebReady)(this._wallet))}catch(t){let e=(null==t?void 0:t.message)||t||"Connect TronLink wallet failed.";throw-32002===t.code&&(e="The same DApp has already initiated a request to connect to TronLink wallet, and the pop-up window has not been closed."),4001===t.code&&(e="The user rejected connection."),new o.WalletConnectionError(e,t)}}else if(window.tronLink){const e=this._wallet;try{const t=yield e.request({method:"tron_requestAccounts"});if(!t)throw new o.WalletConnectionError("TronLink wallet is locked or no wallet account is avaliable.");if(4e3===t.code)throw new o.WalletConnectionError("The same DApp has already initiated a request to connect to TronLink wallet, and the pop-up window has not been closed.");if(4001===t.code)throw new o.WalletConnectionError("The user rejected connection.")}catch(t){throw new o.WalletConnectionError(null==t?void 0:t.message,t)}const n=(null===(t=e.tronWeb.defaultAddress)||void 0===t?void 0:t.base58)||"";this.setAddress(n),this.setState(o.AdapterState.Connected),this._listenTronLinkEvent()}else{if(!window.tronWeb)throw new o.WalletConnectionError("Cannot connect wallet.");{const t=(null===(e=this._wallet.tronWeb.defaultAddress)||void 0===e?void 0:e.base58)||"";this.setAddress(t),this.setState(o.AdapterState.Connected)}}this.connected&&this.emit("connect",this.address||"")}catch(t){throw this.emit("error",t),t}finally{this._connecting=!1}}))}disconnect(){return n(this,void 0,void 0,(function*(){this._supportNewTronProtocol?this._stopListenTronEvent():this._stopListenTronLinkEvent(),this.state===o.AdapterState.Connected&&(this.setAddress(null),this.setState(o.AdapterState.Disconnect),this.emit("disconnect"))}))}signTransaction(t,e){return n(this,void 0,void 0,(function*(){try{const n=yield this.checkAndGetWallet();try{return yield n.tronWeb.trx.sign(t,e)}catch(t){throw t instanceof Error?new o.WalletSignTransactionError(t.message,t):new o.WalletSignTransactionError(t,new Error(t))}}catch(t){throw this.emit("error",t),t}}))}multiSign(t,e,r){return n(this,void 0,void 0,(function*(){try{const n=yield this.checkAndGetWallet();try{return yield n.tronWeb.trx.multiSign(t,e,r)}catch(t){throw t instanceof Error?new o.WalletSignTransactionError(t.message,t):new o.WalletSignTransactionError(t,new Error(t))}}catch(t){throw this.emit("error",t),t}}))}signMessage(t,e){return n(this,void 0,void 0,(function*(){try{const n=yield this.checkAndGetWallet();try{return yield n.tronWeb.trx.signMessageV2(t,e)}catch(t){throw t instanceof Error?new o.WalletSignMessageError(t.message,t):new o.WalletSignMessageError(t,new Error(t))}}catch(t){throw this.emit("error",t),t}}))}switchChain(t){return n(this,void 0,void 0,(function*(){try{if(yield this._checkWallet(),this.state===o.AdapterState.NotFound)throw!1!==this.config.openUrlWhenWalletNotFound&&(0,o.isInBrowser)()&&window.open(this.url,"_blank"),new o.WalletNotFoundError;if(!this._supportNewTronProtocol)throw new o.WalletSwitchChainError("Current version of TronLink doesn't support switch chain operation.");const e=this._wallet;try{yield e.request({method:"wallet_switchEthereumChain",params:[{chainId:t}]})}catch(t){throw new o.WalletSwitchChainError((null==t?void 0:t.message)||t,t instanceof Error?t:new Error(t))}}catch(t){throw this.emit("error",t),t}}))}checkAndGetWallet(){return n(this,void 0,void 0,(function*(){if(this.checkIfOpenTronLink(),yield this._checkWallet(),this.state!==o.AdapterState.Connected)throw new o.WalletDisconnectedError;const t=this._wallet;if(!t||!t.tronWeb)throw new o.WalletDisconnectedError;return t}))}_listenTronLinkEvent(){this._stopListenTronLinkEvent(),window.addEventListener("message",this._tronLinkMessageHandler)}_stopListenTronLinkEvent(){window.removeEventListener("message",this._tronLinkMessageHandler)}checkIfOpenTronLink(){const{dappName:t="",dappIcon:e=""}=this.config;if(!1!==this.config.openTronLinkAppOnMobile&&(0,i.openTronLink)({dappIcon:e,dappName:t}))throw new o.WalletNotFoundError}_listenTronEvent(){this._stopListenTronEvent(),this._stopListenTronLinkEvent();const t=this._wallet;t.on("chainChanged",this._onChainChanged),t.on("accountsChanged",this._onAccountsChanged)}_stopListenTronEvent(){const t=this._wallet;t.removeListener("chainChanged",this._onChainChanged),t.removeListener("accountsChanged",this._onAccountsChanged)}_checkWallet(){if(this.readyState===o.WalletReadyState.Found)return Promise.resolve(!0);if(this._checkPromise)return this._checkPromise;const t=Math.floor(20),e=Math.floor(this.config.checkTimeout/100);let n,r=0;return this._checkPromise=new Promise((s=>{const a=()=>{r++;const a=r<t&&!(0,o.isInMobileBrowser)()?(0,i.supportTron)():(0,i.supportTronLink)();(a||r>e)&&(n&&clearInterval(n),this._readyState=a?o.WalletReadyState.Found:o.WalletReadyState.NotFound,this._updateWallet(),this.emit("readyStateChanged",this.readyState),s(a))};n=setInterval(a,100),a()})),this._checkPromise}checkForWalletReadyForApp(){if(this.checkReadyInterval)return;let t=0;const e=Math.floor(this.config.checkTimeout/200);this.checkReadyInterval=setInterval((()=>{var n,o;(window.tronLink?null===(n=window.tronLink.tronWeb)||void 0===n?void 0:n.defaultAddress:null===(o=window.tronWeb)||void 0===o?void 0:o.defaultAddress)?(this.checkReadyInterval&&clearInterval(this.checkReadyInterval),this.checkReadyInterval=null,this._updateWallet(),this.emit("connect",this.address||"")):t>e?(this.checkReadyInterval&&clearInterval(this.checkReadyInterval),this.checkReadyInterval=null):t++}),200)}setAddress(t){this._address=t}setState(t){t!==this.state&&(this._state=t,this.emit("stateChanged",t))}}e.TronLinkAdapter=a}(m);var M={};Object.defineProperty(M,"__esModule",{value:!0}),function(e){var n=t&&t.__createBinding||(Object.create?function(t,e,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(e,n);r&&!("get"in r?!e.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,o,r)}:function(t,e,n,o){void 0===o&&(o=n),t[o]=e[n]}),o=t&&t.__exportStar||function(t,e){for(var o in t)"default"===o||Object.prototype.hasOwnProperty.call(e,o)||n(e,t,o)};Object.defineProperty(e,"__esModule",{value:!0}),o(m,e),o(M,e),o(I,e)}(W);var T={};Object.defineProperty(T,"__esModule",{value:!0}),T.isGateApp=void 0,T.supportGateWallet=function(){return!(!window.gatewallet||!window.gatewallet.tronLink)},T.isInGateApp=D,T.openGateWallet=function(){if(!D()&&(0,C.isInMobileBrowser)())return window.location.href="https://gateio.onelink.me/DmA6/web3?dapp_url="+encodeURIComponent(window.location.href),!0;return!1};const C=r;function D(){return"undefined"!=typeof window&&void 0!==window.navigator&&/GateApp/i.test(window.navigator.userAgent)}return T.isGateApp="undefined"!=typeof navigator&&/GateApp/i.test(navigator.userAgent),function(e){var n=t&&t.__awaiter||function(t,e,n,o){return new(n||(n=Promise))((function(r,i){function s(t){try{l(o.next(t))}catch(t){i(t)}}function a(t){try{l(o.throw(t))}catch(t){i(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(s,a)}l((o=o.apply(t,e||[])).next())}))};Object.defineProperty(e,"__esModule",{value:!0}),e.GateWalletAdapter=e.GateWalletAdapterName=void 0;const o=r,i=W,s=T;e.GateWalletAdapterName="Gate Wallet";class a extends o.Adapter{constructor(t={}){super(),this.name=e.GateWalletAdapterName,this.url="https://gate.io",this.icon="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPG1hc2sgaWQ9Im1hc2swXzQ1ODJfNzgxIiBzdHlsZT0ibWFzay10eXBlOmFscGhhIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4PSIwIiB5PSIwIiB3aWR0aD0iNDAiIGhlaWdodD0iNDAiPgo8cGF0aCBkPSJNMCA4QzAgMy41ODE3MiAzLjU4MTcyIDAgOCAwSDMyQzM2LjQxODMgMCA0MCAzLjU4MTcyIDQwIDhWMzJDNDAgMzYuNDE4MyAzNi40MTgzIDQwIDMyIDQwSDhDMy41ODE3MiA0MCAwIDM2LjQxODMgMCAzMlY4WiIgZmlsbD0id2hpdGUiLz4KPC9tYXNrPgo8ZyBtYXNrPSJ1cmwoI21hc2swXzQ1ODJfNzgxKSI+CjxwYXRoIGQ9Ik0wIDhDMCAzLjU4MTcyIDMuNTgxNzIgMCA4IDBIMzJDMzYuNDE4MyAwIDQwIDMuNTgxNzIgNDAgOFYzMkM0MCAzNi40MTgzIDM2LjQxODMgNDAgMzIgNDBIOEMzLjU4MTcyIDQwIDAgMzYuNDE4MyAwIDMyVjhaIiBmaWxsPSIjMDA1MUQyIi8+CjwvZz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zNSAyMEMzNSAyOC4yODQzIDI4LjI4NDMgMzUgMjAgMzVDMTEuNzE1NyAzNSA1IDI4LjI4NDMgNSAyMEM1IDExLjcxNTcgMTEuNzE1NyA1IDIwIDVWMTIuMDU4N0MyMCAxMi4wNTg3IDE5Ljk5OTkgMTIuMDU4NyAxOS45OTk5IDEyLjA1ODdDMTUuNjE0MSAxMi4wNTg3IDEyLjA1ODcgMTUuNjE0MSAxMi4wNTg3IDE5Ljk5OTlDMTIuMDU4NyAyNC4zODU3IDE1LjYxNDEgMjcuOTQxMSAxOS45OTk5IDI3Ljk0MTFDMjQuMzg1NiAyNy45NDExIDI3Ljk0MSAyNC4zODU3IDI3Ljk0MTEgMjBIMzVaIiBmaWxsPSJ3aGl0ZSIvPgo8cmVjdCB4PSIyMCIgeT0iMTIuMDU4NiIgd2lkdGg9IjcuOTQxMTgiIGhlaWdodD0iNy45NDExOCIgZmlsbD0iIzE0RTBBMSIvPgo8L3N2Zz4K",this._readyState=(0,o.isInBrowser)()?o.WalletReadyState.Loading:o.WalletReadyState.NotFound,this._state=o.AdapterState.Loading,this.onGateAccountChange=t=>{setTimeout((()=>{const e=this.address||"";if(0!==t.length){const e=t[0];this.setAddress(e),this.setState(o.AdapterState.Connected)}else this.setAddress(null),this.setState(o.AdapterState.Disconnect);(this.address||"")!==e&&this.emit("accountsChanged",this.address||"",e),!e&&this.address?this.emit("connect",this.address):e&&!this.address&&this.emit("disconnect")}),200)},this._checkPromise=null,this._updateWallet=()=>{var t,e;let n=this.state,r=this.address;if((0,s.supportGateWallet)()){this._wallet=s.isGateApp?window.gatewallet.tronLink:window.gatewallet.tron,this._listenEvent(),r=(null===(e=null===(t=this._wallet.tronWeb)||void 0===t?void 0:t.defaultAddress)||void 0===e?void 0:e.base58)||null;n=(s.isGateApp?this._wallet.ready:this._wallet.tronWeb.ready)?o.AdapterState.Connected:o.AdapterState.Disconnect}else this._wallet=null,r=null,n=o.AdapterState.NotFound;this.setAddress(r),this.setState(n)};const{checkTimeout:n=2e3,openUrlWhenWalletNotFound:r=!0,openAppWithDeeplink:i=!0}=t;if("number"!=typeof n)throw new Error("[GateWalletAdapter] config.checkTimeout should be a number");if(this.config={checkTimeout:n,openAppWithDeeplink:i,openUrlWhenWalletNotFound:r},this._connecting=!1,this._wallet=null,this._address=null,!(0,o.isInBrowser)())return this._readyState=o.WalletReadyState.NotFound,void this.setState(o.AdapterState.NotFound);(0,s.supportGateWallet)()?(this._readyState=o.WalletReadyState.Found,this._updateWallet()):this._checkWallet().then((()=>{this.connected&&this.emit("connect",this.address||"")}))}get address(){return this._address}get state(){return this._state}get readyState(){return this._readyState}get connecting(){return this._connecting}network(){return n(this,void 0,void 0,(function*(){try{if(yield this._checkWallet(),this.state!==o.AdapterState.Connected)throw new o.WalletDisconnectedError;const t=this._wallet;if(!t||!t.tronWeb)throw new o.WalletDisconnectedError;try{return yield(0,i.getNetworkInfoByTronWeb)(t.tronWeb)}catch(t){throw new o.WalletGetNetworkError(null==t?void 0:t.message,t)}}catch(t){throw this.emit("error",t),t}}))}connect(){return n(this,void 0,void 0,(function*(){var t;try{if(this.checkIfOpenGateWallet(),this.connected||this.connecting)return;if(yield this._checkWallet(),this.state===o.AdapterState.NotFound)throw!1!==this.config.openUrlWhenWalletNotFound&&(0,o.isInBrowser)()&&window.open(this.url,"_blank"),new o.WalletNotFoundError;if(!this._wallet)return;this._connecting=!0;const e=this._wallet;let n;try{const t=s.isGateApp?"tron_requestAccounts":"eth_requestAccounts";if(n=yield e.request({method:t}),!n)throw new o.WalletConnectionError("Request connect error.");if(4e3===n.code)throw new o.WalletConnectionError("The same DApp has already initiated a request to connect to GateWallet, and the pop-up window has not been closed.");if(4001===n.code)throw new o.WalletConnectionError("The user rejected connection.")}catch(t){throw new o.WalletConnectionError(null==t?void 0:t.message,t)}const r=(s.isGateApp?null===(t=e.tronWeb.defaultAddress)||void 0===t?void 0:t.base58:n[0])||"";this.setAddress(r),this.setState(o.AdapterState.Connected),this._listenEvent(),this.connected&&this.emit("connect",this.address||"")}catch(t){throw this.emit("error",t),t}finally{this._connecting=!1}}))}disconnect(){return n(this,void 0,void 0,(function*(){this._stopListenEvent(),this.state===o.AdapterState.Connected&&(this.setAddress(null),this.setState(o.AdapterState.Disconnect),this.emit("disconnect"))}))}signTransaction(t,e){return n(this,void 0,void 0,(function*(){try{const n=yield this.checkAndGetWallet();try{return yield n.tronWeb.trx.sign(t,e)}catch(t){throw t instanceof Error?new o.WalletSignTransactionError(t.message,t):new o.WalletSignTransactionError(t,new Error(t))}}catch(t){throw this.emit("error",t),t}}))}multiSign(t,e,r){return n(this,void 0,void 0,(function*(){try{const n=yield this.checkAndGetWallet();try{return yield n.tronWeb.trx.multiSign(t,e,r)}catch(t){throw t instanceof Error?new o.WalletSignTransactionError(t.message,t):new o.WalletSignTransactionError(t,new Error(t))}}catch(t){throw this.emit("error",t),t}}))}signMessage(t,e){return n(this,void 0,void 0,(function*(){try{const n=yield this.checkAndGetWallet();try{return yield n.tronWeb.trx.signMessageV2(t,e)}catch(t){throw t instanceof Error?new o.WalletSignMessageError(t.message,t):new o.WalletSignMessageError(t,new Error(t))}}catch(t){throw this.emit("error",t),t}}))}checkAndGetWallet(){return n(this,void 0,void 0,(function*(){if(this.checkIfOpenGateWallet(),yield this._checkWallet(),this.state!==o.AdapterState.Connected)throw new o.WalletDisconnectedError;const t=this._wallet;if(!t||!t.tronWeb)throw new o.WalletDisconnectedError;return t}))}_listenEvent(){this._stopListenEvent(),s.isGateApp||this._wallet.on("accountsChanged",this.onGateAccountChange)}_stopListenEvent(){s.isGateApp||this._wallet.off("accountsChanged",this.onGateAccountChange)}checkIfOpenGateWallet(){if(!1!==this.config.openAppWithDeeplink&&(0,s.openGateWallet)())throw new o.WalletNotFoundError}_checkWallet(){if(this.readyState===o.WalletReadyState.Found)return Promise.resolve(!0);if(this._checkPromise)return this._checkPromise;const t=Math.floor(this.config.checkTimeout/100);let e,n=0;return this._checkPromise=new Promise((r=>{const i=()=>{n++;const i=(0,s.supportGateWallet)();(i||n>t)&&(e&&clearInterval(e),this._readyState=i?o.WalletReadyState.Found:o.WalletReadyState.NotFound,this._updateWallet(),this.emit("readyStateChanged",this.readyState),r(i))};e=setInterval(i,100),i()})),this._checkPromise}setAddress(t){this._address=t}setState(t){t!==this.state&&(this._state=t,this.emit("stateChanged",t))}}e.GateWalletAdapter=a}(o),function(e){var n=t&&t.__createBinding||(Object.create?function(t,e,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(e,n);r&&!("get"in r?!e.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,o,r)}:function(t,e,n,o){void 0===o&&(o=n),t[o]=e[n]}),r=t&&t.__exportStar||function(t,e){for(var o in t)"default"===o||Object.prototype.hasOwnProperty.call(e,o)||n(e,t,o)};Object.defineProperty(e,"__esModule",{value:!0}),r(o,e),r(T,e)}(n),e(n)}));