@dodoex/wallet-web3 0.6.4 → 0.6.5
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/PhArrowCircleDown-4a08ae8e.js +14 -0
- package/dist/PhArrowClockwise-401ea1c0.js +14 -0
- package/dist/PhArrowDown-789ae7d2.js +14 -0
- package/dist/PhArrowLeft-2e6d4940.js +14 -0
- package/dist/PhArrowRight-2928b0dc.js +14 -0
- package/dist/PhArrowSquareOut-17d61d08.js +14 -0
- package/dist/PhArrowUp-1cfcf9df.js +14 -0
- package/dist/PhArrowUpRight-552c41cb.js +14 -0
- package/dist/PhArrowsClockwise-92a70162.js +14 -0
- package/dist/PhArrowsDownUp-ce27c8a7.js +14 -0
- package/dist/PhArrowsLeftRight-ed549dc7.js +14 -0
- package/dist/PhBank-92a1a1df.js +14 -0
- package/dist/PhBrowser-495dc3ce.js +14 -0
- package/dist/PhCaretDown-610f20fc.js +14 -0
- package/dist/PhCaretLeft-2a86ee53.js +14 -0
- package/dist/PhCaretRight-f3057f58.js +14 -0
- package/dist/PhCaretUp-7b74b8cb.js +14 -0
- package/dist/PhCheck-c514f32c.js +14 -0
- package/dist/PhCircleHalf-3bfd24c9.js +14 -0
- package/dist/PhClock-29284ead.js +14 -0
- package/dist/PhCompass-101d3241.js +14 -0
- package/dist/PhCopy-d92dcd27.js +14 -0
- package/dist/PhCreditCard-d8d77fc2.js +14 -0
- package/dist/PhCurrencyDollar-6553df79.js +14 -0
- package/dist/PhDesktop-91653c8e.js +14 -0
- package/dist/PhDeviceMobile-0f3d8fa2.js +14 -0
- package/dist/PhDotsThree-67debca2.js +14 -0
- package/dist/PhEnvelope-f83faab2.js +14 -0
- package/dist/PhFunnelSimple-5058af43.js +14 -0
- package/dist/PhGlobe-c4653621.js +14 -0
- package/dist/PhIdentificationCard-848bf9a1.js +14 -0
- package/dist/PhImage-de71fc6b.js +14 -0
- package/dist/PhInfo-9614a766.js +14 -0
- package/dist/PhLightbulb-7d582ae7.js +14 -0
- package/dist/PhMagnifyingGlass-c926bd63.js +14 -0
- package/dist/PhPaperPlaneRight-76b25832.js +14 -0
- package/dist/PhPlus-767ddc55.js +14 -0
- package/dist/PhPower-95f188dd.js +14 -0
- package/dist/PhPuzzlePiece-f016afe5.js +14 -0
- package/dist/PhQrCode-e9b7ab93.js +14 -0
- package/dist/PhQuestion-ea0e639d.js +14 -0
- package/dist/PhQuestionMark-13d6338e.js +14 -0
- package/dist/PhSealCheck-45bb7b9c.js +14 -0
- package/dist/PhSignOut-6b91c59c.js +14 -0
- package/dist/PhSpinner-eb9b7ac1.js +14 -0
- package/dist/PhTrash-758cc3b3.js +14 -0
- package/dist/PhUser-0834861d.js +14 -0
- package/dist/PhVault-e4d6f9af.js +14 -0
- package/dist/PhWallet-5e257abe.js +14 -0
- package/dist/PhWarning-6af3740e.js +14 -0
- package/dist/PhWarningCircle-a78fd8e8.js +14 -0
- package/dist/PhX-60c46532.js +14 -0
- package/dist/{__tslib-83c7dd77.js → __tslib-6d6a586c.js} +1 -1
- package/dist/{alchemy-provider-5870b6fa-ef26112b.js → alchemy-provider-5870b6fa-a9fe5aa5.js} +1 -1
- package/dist/{alchemy-websocket-provider-213da986-2d698146.js → alchemy-websocket-provider-213da986-16164c2e.js} +1 -1
- package/dist/basic-77fe1b96.js +1320 -0
- package/dist/{blocto-05d7faf5.js → blocto-ab8ba330.js} +1 -1
- package/dist/{ccip-ea7099a8.js → ccip-e246f9cf.js} +1 -1
- package/dist/cjs/PhArrowCircleDown-df23d036.cjs +14 -0
- package/dist/cjs/PhArrowClockwise-440d23dc.cjs +14 -0
- package/dist/cjs/PhArrowDown-252590ed.cjs +14 -0
- package/dist/cjs/PhArrowLeft-d480faa4.cjs +14 -0
- package/dist/cjs/PhArrowRight-969dbdd8.cjs +14 -0
- package/dist/cjs/PhArrowSquareOut-eabfdecb.cjs +14 -0
- package/dist/cjs/PhArrowUp-66bd5f15.cjs +14 -0
- package/dist/cjs/PhArrowUpRight-6df3b31b.cjs +14 -0
- package/dist/cjs/PhArrowsClockwise-3a9d2dc6.cjs +14 -0
- package/dist/cjs/PhArrowsDownUp-47a7788f.cjs +14 -0
- package/dist/cjs/PhArrowsLeftRight-f90368dd.cjs +14 -0
- package/dist/cjs/PhBank-670a2708.cjs +14 -0
- package/dist/cjs/PhBrowser-b9c35fd1.cjs +14 -0
- package/dist/cjs/PhCaretDown-11a46455.cjs +14 -0
- package/dist/cjs/PhCaretLeft-04f11ca7.cjs +14 -0
- package/dist/cjs/PhCaretRight-391111c1.cjs +14 -0
- package/dist/cjs/PhCaretUp-b17dccf6.cjs +14 -0
- package/dist/cjs/PhCheck-08bf36b0.cjs +14 -0
- package/dist/cjs/PhCircleHalf-0a9eac35.cjs +14 -0
- package/dist/cjs/PhClock-cf1cc2cb.cjs +14 -0
- package/dist/cjs/PhCompass-e9671b30.cjs +14 -0
- package/dist/cjs/PhCopy-9132cbc5.cjs +14 -0
- package/dist/cjs/PhCreditCard-853e1556.cjs +14 -0
- package/dist/cjs/PhCurrencyDollar-34eea829.cjs +14 -0
- package/dist/cjs/PhDesktop-c02b883b.cjs +14 -0
- package/dist/cjs/PhDeviceMobile-93c2088c.cjs +14 -0
- package/dist/cjs/PhDotsThree-69beaba7.cjs +14 -0
- package/dist/cjs/PhEnvelope-86ee730e.cjs +14 -0
- package/dist/cjs/PhFunnelSimple-056c2f76.cjs +14 -0
- package/dist/cjs/PhGlobe-64c4ee8e.cjs +14 -0
- package/dist/cjs/PhIdentificationCard-ec7a98e0.cjs +14 -0
- package/dist/cjs/PhImage-07904cbb.cjs +14 -0
- package/dist/cjs/PhInfo-34eeeace.cjs +14 -0
- package/dist/cjs/PhLightbulb-39ebe854.cjs +14 -0
- package/dist/cjs/PhMagnifyingGlass-2fbe4400.cjs +14 -0
- package/dist/cjs/PhPaperPlaneRight-e06c210f.cjs +14 -0
- package/dist/cjs/PhPlus-03a04ed3.cjs +14 -0
- package/dist/cjs/PhPower-4cc2ecb8.cjs +14 -0
- package/dist/cjs/PhPuzzlePiece-035d561e.cjs +14 -0
- package/dist/cjs/PhQrCode-37e23b36.cjs +14 -0
- package/dist/cjs/PhQuestion-bfba435e.cjs +14 -0
- package/dist/cjs/PhQuestionMark-8ef38ecf.cjs +14 -0
- package/dist/cjs/PhSealCheck-5458de15.cjs +14 -0
- package/dist/cjs/PhSignOut-2d177ea1.cjs +14 -0
- package/dist/cjs/PhSpinner-e7c590df.cjs +14 -0
- package/dist/cjs/PhTrash-1920f5dc.cjs +14 -0
- package/dist/cjs/PhUser-84a1a685.cjs +14 -0
- package/dist/cjs/PhVault-1493c03f.cjs +14 -0
- package/dist/cjs/PhWallet-f0502f03.cjs +14 -0
- package/dist/cjs/PhWarning-1bf637ba.cjs +14 -0
- package/dist/cjs/PhWarningCircle-b1747661.cjs +14 -0
- package/dist/cjs/PhX-f864d86c.cjs +14 -0
- package/dist/cjs/{__tslib-12e41834.cjs → __tslib-a9f27ba6.cjs} +1 -1
- package/dist/cjs/{alchemy-provider-5870b6fa-683a7f2e.cjs → alchemy-provider-5870b6fa-bb1c607e.cjs} +1 -1
- package/dist/cjs/{alchemy-websocket-provider-213da986-5c9807c6.cjs → alchemy-websocket-provider-213da986-521569b5.cjs} +1 -1
- package/dist/cjs/basic-b777d2b1.cjs +1320 -0
- package/dist/cjs/{blocto-4db38a28.cjs → blocto-09e0d574.cjs} +1 -1
- package/dist/cjs/{ccip-82e883e4.cjs → ccip-6ebee1cf.cjs} +1 -1
- package/dist/cjs/core-78a709db.cjs +210 -0
- package/dist/cjs/{draggabilly-308ac2a9.cjs → draggabilly-76af6217.cjs} +1 -1
- package/dist/cjs/features-fa5c5622.cjs +1 -0
- package/dist/cjs/id-c0538166.cjs +1 -0
- package/dist/cjs/{index-2c097978.cjs → index-07e81389.cjs} +1 -1
- package/dist/cjs/{index-eae76bd0.cjs → index-093cef5a.cjs} +2 -2
- package/dist/cjs/{index-362be9fb.cjs → index-208df3f3.cjs} +1 -1
- package/dist/cjs/{index-c8fa7932.cjs → index-253e7cce.cjs} +1 -1
- package/dist/cjs/index-2e8e7a50.cjs +4 -0
- package/dist/cjs/index-395b933d.cjs +2 -0
- package/dist/cjs/{index-281d00df.cjs → index-54d7fc75.cjs} +1 -1
- package/dist/cjs/{index-3714da35.cjs → index-5d28acf4.cjs} +2 -2
- package/dist/cjs/{index-85a2526e.cjs → index-5dac528b.cjs} +7 -7
- package/dist/cjs/index-702e8f89.cjs +15 -0
- package/dist/cjs/{index-ceda42fb.cjs → index-823e17e6.cjs} +1 -1
- package/dist/cjs/{index-9325806f.cjs → index-916994aa.cjs} +1 -1
- package/dist/cjs/{index-00b0ab99.cjs → index-a2b665f4.cjs} +1 -1
- package/dist/cjs/{index-c6b53b3f.cjs → index-b099293c.cjs} +1 -1
- package/dist/cjs/index-d72ddbc1.cjs +17 -0
- package/dist/cjs/index-ef4ef0cc.cjs +1449 -0
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/{interface-10b0ba33.cjs → interface-4947cfa6.cjs} +1 -1
- package/dist/cjs/{lib-typedarrays-012f607a.cjs → lib-typedarrays-a9baf142.cjs} +1 -1
- package/dist/cjs/native-55bb141d.cjs +1 -0
- package/dist/cjs/{portis-2144bb98.cjs → portis-08d9d731.cjs} +1 -1
- package/dist/cjs/property-29e6f732.cjs +29 -0
- package/dist/cjs/providers/connector/safeGnosis/query.d.ts +2 -1
- package/dist/cjs/providers/connector/types.d.ts +1 -1
- package/dist/cjs/providers/wallets/index.d.ts +1 -0
- package/dist/cjs/rainbow-6e84bcfa.cjs +1 -0
- package/dist/cjs/sha224-b46bc3e6.cjs +1 -0
- package/dist/cjs/sha256-ccd47519.cjs +1 -0
- package/dist/cjs/{typed-data-e878587d.cjs → typed-data-5176b792.cjs} +1 -1
- package/dist/cjs/uAuth-b29d2670.cjs +1 -0
- package/dist/cjs/w3m-modal-70bcf6d8.cjs +2380 -0
- package/dist/cjs/walletConnect-20d477a9.cjs +1 -0
- package/dist/cjs/{walletLink-8e49b6d5.cjs → walletLink-08b8da20.cjs} +2 -2
- package/dist/core-4d7ad6f2.js +210 -0
- package/dist/{draggabilly-c6f65920.js → draggabilly-daf3b444.js} +1 -1
- package/dist/features-d8d1c9ce.js +1 -0
- package/dist/id-d4d22b29.js +1 -0
- package/dist/{index-227927b5.js → index-09298bd0.js} +7 -7
- package/dist/{index-f360d801.js → index-244a8189.js} +1 -1
- package/dist/{index-f4727f94.js → index-2ad0fb2a.js} +1 -1
- package/dist/index-35d87b79.js +17 -0
- package/dist/{index-eb473b84.js → index-587ff998.js} +1 -1
- package/dist/{index-a6b10e09.js → index-750a7dfe.js} +1 -1
- package/dist/{index-abb4eaf1.js → index-8bd12de1.js} +1 -1
- package/dist/{index-1e0435b6.js → index-938686fb.js} +1 -1
- package/dist/{index-1db47472.js → index-9d7fee1e.js} +2 -2
- package/dist/{index-af823ebd.js → index-aa744ca0.js} +1 -1
- package/dist/{index-cfa6ef57.js → index-b7d25e8a.js} +2 -2
- package/dist/index-bb1a0019.js +15 -0
- package/dist/index-c5ca8a4e.js +4 -0
- package/dist/{index-1cf97dd7.js → index-cddbc8e8.js} +1 -1
- package/dist/index-f095c09e.js +2 -0
- package/dist/index-ffdf981b.js +1449 -0
- package/dist/index.js +1 -1
- package/dist/{interface-ec064b7d.js → interface-0c535796.js} +1 -1
- package/dist/{lib-typedarrays-ecebfb2c.js → lib-typedarrays-979d2723.js} +1 -1
- package/dist/native-029c50f7.js +1 -0
- package/dist/{portis-e3d3d420.js → portis-9602ac9f.js} +1 -1
- package/dist/property-8eb37909.js +35 -0
- package/dist/providers/connector/safeGnosis/query.d.ts +2 -1
- package/dist/providers/connector/types.d.ts +1 -1
- package/dist/providers/wallets/index.d.ts +1 -0
- package/dist/rainbow-ccab7a95.js +1 -0
- package/dist/sha224-fe98e1bf.js +1 -0
- package/dist/sha256-5a24dfd5.js +1 -0
- package/dist/{typed-data-0f706378.js → typed-data-3a3d44dc.js} +1 -1
- package/dist/uAuth-27f5728d.js +1 -0
- package/dist/w3m-modal-49add722.js +2380 -0
- package/dist/walletConnect-a541881e.js +1 -0
- package/dist/{walletLink-68441960.js → walletLink-67264328.js} +2 -2
- package/package.json +3 -3
- package/dist/_commonjs-dynamic-modules-7cfc9805.js +0 -1
- package/dist/cjs/_commonjs-dynamic-modules-f09a98c7.cjs +0 -1
- package/dist/cjs/id-ea22b6ce.cjs +0 -1
- package/dist/cjs/index-35edc6a0.cjs +0 -60
- package/dist/cjs/index-8a25465c.cjs +0 -6
- package/dist/cjs/index-9f2a69d5.cjs +0 -1
- package/dist/cjs/index-fdda1836.cjs +0 -17
- package/dist/cjs/index.es-80622213.cjs +0 -9
- package/dist/cjs/rainbow-18d05876.cjs +0 -1
- package/dist/cjs/sha224-1c092a15.cjs +0 -1
- package/dist/cjs/sha256-9e1680c1.cjs +0 -1
- package/dist/cjs/uAuth-b89f7081.cjs +0 -1
- package/dist/cjs/walletConnect-b79e1e97.cjs +0 -1
- package/dist/id-397f0303.js +0 -1
- package/dist/index-02e42cd2.js +0 -17
- package/dist/index-65d96278.js +0 -60
- package/dist/index-89717995.js +0 -6
- package/dist/index-f08d6a6b.js +0 -1
- package/dist/index.es-7adbb6c0.js +0 -9
- package/dist/rainbow-73b82cd7.js +0 -1
- package/dist/sha224-51e5e6a9.js +0 -1
- package/dist/sha256-549e482b.js +0 -1
- package/dist/uAuth-ce19d386.js +0 -1
- package/dist/walletConnect-b0b635de.js +0 -1
package/dist/{alchemy-provider-5870b6fa-ef26112b.js → alchemy-provider-5870b6fa-a9fe5aa5.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{L as e,aH as t,aI as r,aJ as n,aK as i,aL as s,aM as o,aN as a,aO as c,aP as d,l as h,aQ as u,aR as l,aS as m}from"./index-
|
|
1
|
+
import{L as e,aH as t,aI as r,aJ as n,aK as i,aL as s,aM as o,aN as a,aO as c,aP as d,l as h,aQ as u,aR as l,aS as m}from"./index-09298bd0.js";import{JsonRpcProvider as f}from"@ethersproject/providers";import"@ethersproject/abstract-provider";import"@ethersproject/contracts";const p=new e("networks/5.7.1");function v(e){const t=function(t,r){null==r&&(r={});const n=[];if(t.InfuraProvider&&"-"!==r.infura)try{n.push(new t.InfuraProvider(e,r.infura))}catch(e){}if(t.EtherscanProvider&&"-"!==r.etherscan)try{n.push(new t.EtherscanProvider(e,r.etherscan))}catch(e){}if(t.AlchemyProvider&&"-"!==r.alchemy)try{n.push(new t.AlchemyProvider(e,r.alchemy))}catch(e){}if(t.PocketProvider&&"-"!==r.pocket){const i=["goerli","ropsten","rinkeby","sepolia"];try{const s=new t.PocketProvider(e,r.pocket);s.network&&-1===i.indexOf(s.network.name)&&n.push(s)}catch(e){}}if(t.CloudflareProvider&&"-"!==r.cloudflare)try{n.push(new t.CloudflareProvider(e))}catch(e){}if(t.AnkrProvider&&"-"!==r.ankr)try{const i=["ropsten"],s=new t.AnkrProvider(e,r.ankr);s.network&&-1===i.indexOf(s.network.name)&&n.push(s)}catch(e){}if(0===n.length)return null;if(t.FallbackProvider){let i=1;return null!=r.quorum?i=r.quorum:"homestead"===e&&(i=2),new t.FallbackProvider(n,i)}return n[0]};return t.renetwork=function(e){return v(e)},t}function w(e,t){const r=function(r,n){return r.JsonRpcProvider?new r.JsonRpcProvider(e,t):null};return r.renetwork=function(t){return w(e,t)},r}const k={chainId:1,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"homestead",_defaultProvider:v("homestead")},b={chainId:3,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"ropsten",_defaultProvider:v("ropsten")},g={chainId:63,name:"classicMordor",_defaultProvider:w("https://www.ethercluster.com/mordor","classicMordor")},I={unspecified:{chainId:0,name:"unspecified"},homestead:k,mainnet:k,morden:{chainId:2,name:"morden"},ropsten:b,testnet:b,rinkeby:{chainId:4,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"rinkeby",_defaultProvider:v("rinkeby")},kovan:{chainId:42,name:"kovan",_defaultProvider:v("kovan")},goerli:{chainId:5,ensAddress:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",name:"goerli",_defaultProvider:v("goerli")},kintsugi:{chainId:1337702,name:"kintsugi"},sepolia:{chainId:11155111,name:"sepolia",_defaultProvider:v("sepolia")},classic:{chainId:61,name:"classic",_defaultProvider:w("https://www.ethercluster.com/etc","classic")},classicMorden:{chainId:62,name:"classicMorden"},classicMordor:g,classicTestnet:g,classicKotti:{chainId:6,name:"classicKotti",_defaultProvider:w("https://www.ethercluster.com/kotti","classicKotti")},xdai:{chainId:100,name:"xdai"},matic:{chainId:137,name:"matic",_defaultProvider:v("matic")},maticmum:{chainId:80001,name:"maticmum"},optimism:{chainId:10,name:"optimism",_defaultProvider:v("optimism")},"optimism-kovan":{chainId:69,name:"optimism-kovan"},"optimism-goerli":{chainId:420,name:"optimism-goerli"},arbitrum:{chainId:42161,name:"arbitrum"},"arbitrum-rinkeby":{chainId:421611,name:"arbitrum-rinkeby"},"arbitrum-goerli":{chainId:421613,name:"arbitrum-goerli"},bnb:{chainId:56,name:"bnb"},bnbt:{chainId:97,name:"bnbt"}};function y(e){if(null==e)return null;if("number"==typeof e){for(const t in I){const r=I[t];if(r.chainId===e)return{name:r.name,chainId:r.chainId,ensAddress:r.ensAddress||null,_defaultProvider:r._defaultProvider||null}}return{chainId:e,name:"unknown"}}if("string"==typeof e){const t=I[e];return null==t?null:{name:t.name,chainId:t.chainId,ensAddress:t.ensAddress,_defaultProvider:t._defaultProvider||null}}const t=I[e.name];if(!t)return"number"!=typeof e.chainId&&p.throwArgumentError("invalid network chainId","network",e),e;0!==e.chainId&&e.chainId!==t.chainId&&p.throwArgumentError("network chainId mismatch","network",e);let r=e._defaultProvider||null;var n;return null==r&&t._defaultProvider&&(r=(n=t._defaultProvider)&&"function"==typeof n.renetwork?t._defaultProvider.renetwork(e):t._defaultProvider),{name:e.name,chainId:t.chainId,ensAddress:e.ensAddress||t.ensAddress||null,_defaultProvider:r}}class P{constructor(e,t=100){this.sendBatchFn=e,this.maxBatchSize=t,this.pendingBatch=[]}enqueueRequest(e){return a(this,void 0,void 0,(function*(){const t={request:e,resolve:void 0,reject:void 0},r=new Promise(((e,r)=>{t.resolve=e,t.reject=r}));return this.pendingBatch.push(t),this.pendingBatch.length===this.maxBatchSize?this.sendBatchRequest():this.pendingBatchTimer||(this.pendingBatchTimer=setTimeout((()=>this.sendBatchRequest()),10)),r}))}sendBatchRequest(){return a(this,void 0,void 0,(function*(){const e=this.pendingBatch;this.pendingBatch=[],this.pendingBatchTimer&&(clearTimeout(this.pendingBatchTimer),this.pendingBatchTimer=void 0);const t=e.map((e=>e.request));return this.sendBatchFn(t).then((t=>{e.forEach(((e,r)=>{const n=t[r];if(n.error){const t=new Error(n.error.message);t.code=n.error.code,t.data=n.error.data,e.reject(t)}else e.resolve(n.result)}))}),(t=>{e.forEach((e=>{e.reject(t)}))}))}))}}class A extends f{constructor(e){const t=A.getApiKey(e.apiKey),r=A.getAlchemyNetwork(e.network),n=A.getAlchemyConnectionInfo(r,t,"http");void 0!==e.url&&(n.url=e.url),n.throttleLimit=e.maxRetries;super(n,u[r]),this.apiKey=e.apiKey,this.maxRetries=e.maxRetries,this.batchRequests=e.batchRequests;const i=Object.assign(Object.assign({},this.connection),{headers:Object.assign(Object.assign({},this.connection.headers),{"Alchemy-Ethers-Sdk-Method":"batchSend"})});this.batcher=new P((e=>h(i,JSON.stringify(e)))),this.modifyFormatter()}static getApiKey(e){if(null==e)return t;if(e&&"string"!=typeof e)throw new Error(`Invalid apiKey '${e}' provided. apiKey must be a string.`);return e}static getNetwork(e){return"string"==typeof e&&e in r?r[e]:y(e)}static getAlchemyNetwork(e){if(void 0===e)return n;if("number"==typeof e)throw new Error(`Invalid network '${e}' provided. Network must be a string.`);if(!Object.values(i).includes(e))throw new Error(`Invalid network '${e}' provided. Network must be one of: ${Object.values(i).join(", ")}.`);return e}static getAlchemyConnectionInfo(e,t,r){const n="http"===r?l(e,t):m(e,t);return{headers:s?{"Alchemy-Ethers-Sdk-Version":o}:{"Alchemy-Ethers-Sdk-Version":o,"Accept-Encoding":"gzip"},allowGzip:!0,url:n}}detectNetwork(){const e=Object.create(null,{detectNetwork:{get:()=>super.detectNetwork}});return a(this,void 0,void 0,(function*(){let t=this.network;if(null==t&&(t=yield e.detectNetwork.call(this),!t))throw new Error("No network detected");return t}))}_startPending(){c("WARNING: Alchemy Provider does not support pending filters")}isCommunityResource(){return this.apiKey===t}send(e,t){return this._send(e,t,"send")}_send(e,t,r,n=!1){const i={method:e,params:t,id:this._nextId++,jsonrpc:"2.0"};if(Object.assign({},this.connection).headers["Alchemy-Ethers-Sdk-Method"]=r,this.batchRequests||n)return this.batcher.enqueueRequest(i);this.emit("debug",{action:"request",request:d(i),provider:this});const s=["eth_chainId","eth_blockNumber"].indexOf(e)>=0;if(s&&this._cache[e])return this._cache[e];const o=h(this.connection,JSON.stringify(i),_).then((e=>(this.emit("debug",{action:"response",request:i,response:e,provider:this}),e)),(e=>{throw this.emit("debug",{action:"response",error:e,request:i,provider:this}),e}));return s&&(this._cache[e]=o,setTimeout((()=>{this._cache[e]=null}),0)),o}modifyFormatter(){this.formatter.formats.receiptLog.removed=e=>{if("boolean"==typeof e)return e}}}function _(e){if(e.error){const t=new Error(e.error.message);throw t.code=e.error.code,t.data=e.error.data,t}return e.result}var B=Object.freeze({__proto__:null,AlchemyProvider:A});export{A,B as a,y as g};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{aN as e,aT as t,aI as s,aU as n,aV as i,aW as o,aX as r,aH as c,aY as l,aZ as a,a_ as h,a$ as u,B as d,b0 as f,b1 as p,aM as m,aQ as b}from"./index-227927b5.js";import{A as v,g as y}from"./alchemy-provider-5870b6fa-ef26112b.js";import{WebSocketProvider as g}from"@ethersproject/providers";import"@ethersproject/abstract-provider";import"@ethersproject/contracts";import"zustand";import"@ethersproject/bytes";import"@ethersproject/properties";import"@ethersproject/address";import"@ethersproject/abstract-signer";import"buffer";import"events";import"@ethersproject/constants";import"@ethersproject/transactions";var k={};Object.defineProperty(k,"__esModule",{value:!0});var E=function(){function e(t,s,n){if(void 0===n&&(n={}),this.url=t,this.onclose=null,this.onerror=null,this.onmessage=null,this.onopen=null,this.ondown=null,this.onreopen=null,this.CONNECTING=e.CONNECTING,this.OPEN=e.OPEN,this.CLOSING=e.CLOSING,this.CLOSED=e.CLOSED,this.hasBeenOpened=!1,this.isClosed=!1,this.messageBuffer=[],this.nextRetryTime=0,this.reconnectCount=0,this.lastKnownExtensions="",this.lastKnownProtocol="",this.listeners={},null==s||"string"==typeof s||Array.isArray(s)?this.protocols=s:n=s,this.options=I(n),!this.options.wsConstructor){if("undefined"==typeof WebSocket)throw new Error("WebSocket not present in global scope and no wsConstructor option was provided.");this.options.wsConstructor=WebSocket}this.openNewWebSocket()}return Object.defineProperty(e.prototype,"binaryType",{get:function(){return this.binaryTypeInternal||"blob"},set:function(e){this.binaryTypeInternal=e,this.ws&&(this.ws.binaryType=e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"bufferedAmount",{get:function(){var e=this.ws?this.ws.bufferedAmount:0,t=!1;return this.messageBuffer.forEach((function(s){var n=function(e){return"string"==typeof e?2*e.length:e instanceof ArrayBuffer?e.byteLength:e instanceof Blob?e.size:void 0}(s);null!=n?e+=n:t=!0})),t&&this.debugLog("Some buffered data had unknown length. bufferedAmount() return value may be below the correct amount."),e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"extensions",{get:function(){return this.ws?this.ws.extensions:this.lastKnownExtensions},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"protocol",{get:function(){return this.ws?this.ws.protocol:this.lastKnownProtocol},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"readyState",{get:function(){return this.isClosed?e.CLOSED:e.OPEN},enumerable:!0,configurable:!0}),e.prototype.close=function(e,t){this.disposeSocket(e,t),this.shutdown(),this.debugLog("WebSocket permanently closed by client.")},e.prototype.send=function(e){if(this.isClosed)throw new Error("WebSocket is already in CLOSING or CLOSED state.");this.ws&&this.ws.readyState===this.OPEN?this.ws.send(e):this.messageBuffer.push(e)},e.prototype.reconnect=function(){if(this.isClosed)throw new Error("Cannot call reconnect() on socket which is permanently closed.");this.disposeSocket(1e3,"Client requested reconnect."),this.handleClose(void 0)},e.prototype.addEventListener=function(e,t){this.listeners[e]||(this.listeners[e]=[]),this.listeners[e].push(t)},e.prototype.dispatchEvent=function(e){return this.dispatchEventOfType(e.type,e)},e.prototype.removeEventListener=function(e,t){this.listeners[e]&&(this.listeners[e]=this.listeners[e].filter((function(e){return e!==t})))},e.prototype.openNewWebSocket=function(){var e=this;if(!this.isClosed){var t=this.options,s=t.connectTimeout,n=t.wsConstructor;this.debugLog("Opening new WebSocket to "+this.url+".");var i=new n(this.url,this.protocols);i.onclose=function(t){return e.handleClose(t)},i.onerror=function(t){return e.handleError(t)},i.onmessage=function(t){return e.handleMessage(t)},i.onopen=function(t){return e.handleOpen(t)},this.connectTimeoutId=setTimeout((function(){e.clearConnectTimeout(),e.disposeSocket(),e.handleClose(void 0)}),s),this.ws=i}},e.prototype.handleOpen=function(e){var t=this;if(this.ws&&!this.isClosed){var s=this.options.allClearResetTime;this.debugLog("WebSocket opened."),null!=this.binaryTypeInternal?this.ws.binaryType=this.binaryTypeInternal:this.binaryTypeInternal=this.ws.binaryType,this.clearConnectTimeout(),this.hasBeenOpened?this.dispatchEventOfType("reopen",e):(this.dispatchEventOfType("open",e),this.hasBeenOpened=!0),this.messageBuffer.forEach((function(e){return t.send(e)})),this.messageBuffer=[],this.allClearTimeoutId=setTimeout((function(){t.clearAllClearTimeout(),t.nextRetryTime=0,t.reconnectCount=0;var e=s/1e3|0;t.debugLog("WebSocket remained open for "+e+" seconds. Resetting retry time and count.")}),s)}},e.prototype.handleMessage=function(e){this.isClosed||this.dispatchEventOfType("message",e)},e.prototype.handleClose=function(e){var t=this;if(!this.isClosed){var s=this.options,n=s.maxReconnectAttempts,i=s.shouldReconnect;if(this.clearConnectTimeout(),this.clearAllClearTimeout(),this.ws&&(this.lastKnownExtensions=this.ws.extensions,this.lastKnownProtocol=this.ws.protocol,this.disposeSocket()),this.dispatchEventOfType("down",e),this.reconnectCount>=n)this.stopReconnecting(e,this.getTooManyFailedReconnectsMessage());else{var o=!e||i(e);"boolean"==typeof o?this.handleWillReconnect(o,e,"Provided shouldReconnect() returned false. Closing permanently."):o.then((function(s){t.isClosed||t.handleWillReconnect(s,e,"Provided shouldReconnect() resolved to false. Closing permanently.")}))}}},e.prototype.handleError=function(e){this.dispatchEventOfType("error",e),this.debugLog("WebSocket encountered an error.")},e.prototype.handleWillReconnect=function(e,t,s){e?this.reestablishConnection():this.stopReconnecting(t,s)},e.prototype.reestablishConnection=function(){var e=this,t=this.options,s=t.minReconnectDelay,n=t.maxReconnectDelay,i=t.reconnectBackoffFactor;this.reconnectCount++;var o=this.nextRetryTime;this.nextRetryTime=Math.max(s,Math.min(this.nextRetryTime*i,n)),setTimeout((function(){return e.openNewWebSocket()}),o);var r=o/1e3|0;this.debugLog("WebSocket was closed. Re-opening in "+r+" seconds.")},e.prototype.stopReconnecting=function(e,t){this.debugLog(t),this.shutdown(),e&&this.dispatchEventOfType("close",e)},e.prototype.shutdown=function(){this.isClosed=!0,this.clearAllTimeouts(),this.messageBuffer=[],this.disposeSocket()},e.prototype.disposeSocket=function(e,t){this.ws&&(this.ws.onerror=N,this.ws.onclose=N,this.ws.onmessage=N,this.ws.onopen=N,this.ws.close(e,t),this.ws=void 0)},e.prototype.clearAllTimeouts=function(){this.clearConnectTimeout(),this.clearAllClearTimeout()},e.prototype.clearConnectTimeout=function(){null!=this.connectTimeoutId&&(clearTimeout(this.connectTimeoutId),this.connectTimeoutId=void 0)},e.prototype.clearAllClearTimeout=function(){null!=this.allClearTimeoutId&&(clearTimeout(this.allClearTimeoutId),this.allClearTimeoutId=void 0)},e.prototype.dispatchEventOfType=function(e,t){var s=this;switch(e){case"close":this.onclose&&this.onclose(t);break;case"error":this.onerror&&this.onerror(t);break;case"message":this.onmessage&&this.onmessage(t);break;case"open":this.onopen&&this.onopen(t);break;case"down":this.ondown&&this.ondown(t);break;case"reopen":this.onreopen&&this.onreopen(t)}return e in this.listeners&&this.listeners[e].slice().forEach((function(e){return s.callListener(e,t)})),!t||!t.defaultPrevented},e.prototype.callListener=function(e,t){"function"==typeof e?e.call(this,t):e.handleEvent.call(this,t)},e.prototype.debugLog=function(e){this.options.debug&&console.log(e)},e.prototype.getTooManyFailedReconnectsMessage=function(){var e,t=this.options.maxReconnectAttempts;return"Failed to reconnect after "+t+" "+(e="attempt",(1===t?e:e+"s")+". Closing permanently.")},e.DEFAULT_OPTIONS={allClearResetTime:5e3,connectTimeout:5e3,debug:!1,minReconnectDelay:1e3,maxReconnectDelay:3e4,maxReconnectAttempts:Number.POSITIVE_INFINITY,reconnectBackoffFactor:1.5,shouldReconnect:function(){return!0},wsConstructor:void 0},e.CONNECTING=0,e.OPEN=1,e.CLOSING=2,e.CLOSED=3,e}(),w=k.default=E;function I(e){var t={};return Object.keys(E.DEFAULT_OPTIONS).forEach((function(s){var n=e[s];t[s]=void 0===n?E.DEFAULT_OPTIONS[s]:n})),t}function N(){}class B{constructor(e){this.provider=e,this.maxBackfillBlocks=120}getNewHeadsBackfill(t,s,n){return e(this,void 0,void 0,(function*(){O(t);const e=yield this.getBlockNumber();if(O(t),0===s.length)return this.getHeadEventsInRange(Math.max(n,e-this.maxBackfillBlocks)+1,e+1);const i=f(s[s.length-1].number),o=e-this.maxBackfillBlocks+1;if(i<=o)return this.getHeadEventsInRange(o,e+1);const r=yield this.getReorgHeads(t,s);O(t);const c=yield this.getHeadEventsInRange(i+1,e+1);return O(t),[...r,...c]}))}getLogsBackfill(t,s,n,i){return e(this,void 0,void 0,(function*(){O(t);const e=yield this.getBlockNumber();if(O(t),0===n.length)return this.getLogsInRange(s,Math.max(i,e-this.maxBackfillBlocks)+1,e+1);const o=f(n[n.length-1].blockNumber),r=e-this.maxBackfillBlocks+1;if(o<r)return this.getLogsInRange(s,r,e+1);const c=yield this.getCommonAncestor(t,n);O(t);const l=n.filter((e=>f(e.blockNumber)>c.blockNumber)).map((e=>Object.assign(Object.assign({},e),{removed:!0}))),a=c.blockNumber===Number.NEGATIVE_INFINITY?f(n[0].blockNumber):c.blockNumber;let h=yield this.getLogsInRange(s,a,e+1);return h=h.filter((e=>e&&(f(e.blockNumber)>c.blockNumber||f(e.logIndex)>c.logIndex))),O(t),[...l,...h]}))}setMaxBackfillBlock(e){this.maxBackfillBlocks=e}getBlockNumber(){return e(this,void 0,void 0,(function*(){const e=yield this.provider.send("eth_blockNumber");return f(e)}))}getHeadEventsInRange(t,s){return e(this,void 0,void 0,(function*(){if(t>=s)return[];const e=[];for(let n=t;n<s;n++)e.push({method:"eth_getBlockByNumber",params:[p(n),!1]});return(yield this.provider.sendBatch(e)).map(T)}))}getReorgHeads(t,s){return e(this,void 0,void 0,(function*(){const e=[];for(let n=s.length-1;n>=0;n--){const i=s[n],o=yield this.getBlockByNumber(f(i.number));if(O(t),i.hash===o.hash)break;e.push(T(o))}return e.reverse()}))}getBlockByNumber(t){return e(this,void 0,void 0,(function*(){return this.provider.send("eth_getBlockByNumber",[p(t),!1])}))}getCommonAncestor(t,s){return e(this,void 0,void 0,(function*(){let e=yield this.getBlockByNumber(f(s[s.length-1].blockNumber));O(t);for(let t=s.length-1;t>=0;t--){const n=s[t];if(n.blockNumber!==e.number&&(e=yield this.getBlockByNumber(f(n.blockNumber))),n.blockHash===e.hash)return{blockNumber:f(n.blockNumber),logIndex:f(n.logIndex)}}return{blockNumber:Number.NEGATIVE_INFINITY,logIndex:Number.NEGATIVE_INFINITY}}))}getLogsInRange(t,s,n){return e(this,void 0,void 0,(function*(){if(s>=n)return[];const e=Object.assign(Object.assign({},t),{fromBlock:p(s),toBlock:p(n-1)});return this.provider.send("eth_getLogs",[e])}))}}function T(e){const t=Object.assign({},e);return delete t.totalDifficulty,delete t.transactions,delete t.uncles,t}function C(e,t){const s=new Set,n=[];return e.forEach((e=>{const i=t(e);s.has(i)||(s.add(i),n.push(e))})),n}const _=new Error("Cancelled");function O(e){if(e())throw _}const A=10;class S extends g{constructor(s,n){var i;const o=v.getApiKey(s.apiKey),r=v.getAlchemyNetwork(s.network),c=v.getAlchemyConnectionInfo(r,o,"wss"),l=`alchemy-sdk-${m}`;super(new w(null!==(i=s.url)&&void 0!==i?i:c.url,l,{wsConstructor:null!=n?n:"undefined"!=typeof process&&null!=process&&null!=process.versions&&null!=process.versions.node?require("websocket").w3cwebsocket:WebSocket}),b[r]),this._events=[],this.virtualSubscriptionsById=new Map,this.virtualIdsByPhysicalId=new Map,this.handleMessage=e=>{const t=JSON.parse(e.data);if(!function(e){return!function(e){return Array.isArray(e)||"2.0"===e.jsonrpc&&void 0!==e.id}(e)}(t))return;const s=t.params.subscription,n=this.virtualIdsByPhysicalId.get(s);if(!n)return;const i=this.virtualSubscriptionsById.get(n);if("eth_subscribe"===i.method)switch(i.params[0]){case"newHeads":{const e=i,o=t,{isBackfilling:r,backfillBuffer:c}=e,{result:l}=o.params;r?function(e,t){W(e,t,F)}(c,l):s!==n?this.emitAndRememberEvent(n,l,F):this.rememberEvent(n,l,F);break}case"logs":{const e=i,o=t,{isBackfilling:r,backfillBuffer:c}=e,{result:l}=o.params;r?function(e,t){W(e,t,M)}(c,l):n!==s?this.emitAndRememberEvent(n,l,M):this.rememberEvent(n,l,M);break}default:if(s!==n){const{result:e}=t.params;this.emitEvent(n,e)}}},this.handleReopen=()=>{this.virtualIdsByPhysicalId.clear();const{cancel:t,isCancelled:s}=function(){let e=!1;return{cancel:()=>e=!0,isCancelled:()=>e}}();this.cancelBackfill=t;for(const t of this.virtualSubscriptionsById.values())(()=>{e(this,void 0,void 0,(function*(){try{yield this.resubscribeAndBackfill(s,t)}catch(e){s()||console.error(`Error while backfilling "${t.params[0]}" subscription. Some events may be missing.`,e)}}))})();this.startHeartbeat()},this.stopHeartbeatAndBackfill=()=>{null!=this.heartbeatIntervalId&&(clearInterval(this.heartbeatIntervalId),this.heartbeatIntervalId=void 0),this.cancelBackfill()},this.apiKey=o,this.backfiller=new B(this),this.addSocketListeners(),this.startHeartbeat(),this.cancelBackfill=t}static getNetwork(e){return"string"==typeof e&&e in s?s[e]:y(e)}on(e,t){return this._addEventListener(e,t,!1)}once(e,t){return this._addEventListener(e,t,!0)}off(e,t){return n(e)?this._off(e,t):super.off(e,t)}removeAllListeners(e){return void 0!==e&&n(e)?this._removeAllListeners(e):super.removeAllListeners(e)}listenerCount(e){return void 0!==e&&n(e)?this._listenerCount(e):super.listenerCount(e)}listeners(e){return void 0!==e&&n(e)?this._listeners(e):super.listeners(e)}_addEventListener(e,t,s){if(n(e)){i(e);const n=new o(r(e),t,s);return this._events.push(n),this._startEvent(n),this}return super._addEventListener(e,t,s)}_startEvent(e){[...l,"block","filter"].includes(e.type)?this.customStartEvent(e):super._startEvent(e)}_subscribe(t,s,n,i){return e(this,void 0,void 0,(function*(){let e=this._subIds[t];const o=yield this.getBlockNumber();null==e&&(e=Promise.all(s).then((e=>this.send("eth_subscribe",e))),this._subIds[t]=e);const r=yield e,c=yield Promise.all(s);this.virtualSubscriptionsById.set(r,{event:i,method:"eth_subscribe",params:c,startingBlockNumber:o,virtualId:r,physicalId:r,sentEvents:[],isBackfilling:!1,backfillBuffer:[]}),this.virtualIdsByPhysicalId.set(r,r),this._subs[r]={tag:t,processFunc:n}}))}emit(e,...t){if(n(e)){let s=!1;const n=[],i=r(e);return this._events=this._events.filter((e=>e.tag!==i||(setTimeout((()=>{e.listener.apply(this,t)}),0),s=!0,!e.once||(n.push(e),!1)))),n.forEach((e=>{this._stopEvent(e)})),s}return super.emit(e,...t)}sendBatch(t){return e(this,void 0,void 0,(function*(){let e=0;const s=t.map((({method:t,params:s})=>({method:t,params:s,jsonrpc:"2.0",id:"alchemy-sdk:"+e++})));return this.sendBatchConcurrently(s)}))}destroy(){return this.removeSocketListeners(),this.stopHeartbeatAndBackfill(),super.destroy()}isCommunityResource(){return this.apiKey===c}_stopEvent(e){let t=e.tag;if(l.includes(e.type)){if(this._events.filter((e=>l.includes(e.type))).length)return}else if("tx"===e.type){if(this._events.filter((e=>"tx"===e.type)).length)return;t="tx"}else if(this.listenerCount(e.event))return;const s=this._subIds[t];s&&(delete this._subIds[t],s.then((e=>{this._subs[e]&&(delete this._subs[e],this.send("eth_unsubscribe",[e]))})))}addSocketListeners(){this._websocket.addEventListener("message",this.handleMessage),this._websocket.addEventListener("reopen",this.handleReopen),this._websocket.addEventListener("down",this.stopHeartbeatAndBackfill)}removeSocketListeners(){this._websocket.removeEventListener("message",this.handleMessage),this._websocket.removeEventListener("reopen",this.handleReopen),this._websocket.removeEventListener("down",this.stopHeartbeatAndBackfill)}resubscribeAndBackfill(t,s){return e(this,void 0,void 0,(function*(){const{virtualId:e,method:n,params:i,sentEvents:o,backfillBuffer:r,startingBlockNumber:c}=s;s.isBackfilling=!0,r.length=0;try{const l=yield this.send(n,i);switch(O(t),s.physicalId=l,this.virtualIdsByPhysicalId.set(l,e),i[0]){case"newHeads":{const s=yield x((()=>H(this.backfiller.getNewHeadsBackfill(t,o,c),6e4)),5,(()=>!t()));O(t);(function(e){return C(e,(e=>e.hash))})([...s,...r]).forEach((t=>this.emitNewHeadsEvent(e,t)));break}case"logs":{const s=i[1]||{},n=yield x((()=>H(this.backfiller.getLogsBackfill(t,s,o,c),6e4)),5,(()=>!t()));O(t);(function(e){return C(e,(e=>`${e.blockHash}/${e.logIndex}`))})([...n,...r]).forEach((t=>this.emitLogsEvent(e,t)));break}}}finally{s.isBackfilling=!1,r.length=0}}))}emitNewHeadsEvent(e,t){this.emitAndRememberEvent(e,t,F)}emitLogsEvent(e,t){this.emitAndRememberEvent(e,t,M)}emitAndRememberEvent(e,t,s){this.rememberEvent(e,t,s),this.emitEvent(e,t)}emitEvent(e,t){const s=this.virtualSubscriptionsById.get(e);s&&this.emitGenericEvent(s,t)}rememberEvent(e,t,s){const n=this.virtualSubscriptionsById.get(e);n&&W(n.sentEvents,Object.assign({},t),s)}emitGenericEvent(e,t){this.emitProcessFn(e.event)(t)}startHeartbeat(){null==this.heartbeatIntervalId&&(this.heartbeatIntervalId=setInterval((()=>e(this,void 0,void 0,(function*(){try{yield H(this.send("net_version"),1e4)}catch(e){this._websocket.reconnect()}}))),3e4))}sendBatchConcurrently(t){return e(this,void 0,void 0,(function*(){return Promise.all(t.map((e=>this.send(e.method,e.params))))}))}customStartEvent(e){if(e.type===a){const{fromAddress:t,toAddress:s,hashesOnly:n}=e;this._subscribe(e.tag,[h.PENDING_TRANSACTIONS,{fromAddress:t,toAddress:s,hashesOnly:n}],this.emitProcessFn(e),e)}else if(e.type===u){const{addresses:t,includeRemoved:s,hashesOnly:n}=e;this._subscribe(e.tag,[h.MINED_TRANSACTIONS,{addresses:t,includeRemoved:s,hashesOnly:n}],this.emitProcessFn(e),e)}else"block"===e.type?this._subscribe("block",["newHeads"],this.emitProcessFn(e),e):"filter"===e.type&&this._subscribe(e.tag,["logs",this._getFilter(e.filter)],this.emitProcessFn(e),e)}emitProcessFn(e){switch(e.type){case a:return t=>this.emit({method:h.PENDING_TRANSACTIONS,fromAddress:e.fromAddress,toAddress:e.toAddress,hashesOnly:e.hashesOnly},t);case u:return t=>this.emit({method:h.MINED_TRANSACTIONS,addresses:e.addresses,includeRemoved:e.includeRemoved,hashesOnly:e.hashesOnly},t);case"block":return e=>{const t=d.from(e.number).toNumber();this._emitted.block=t,this.emit("block",t)};case"filter":return t=>{null==t.removed&&(t.removed=!1),this.emit(e.filter,this.formatter.filterLog(t))};default:throw new Error("Invalid event type to `emitProcessFn()`")}}_off(e,t){if(null==t)return this.removeAllListeners(e);const s=[];let n=!1;const i=r(e);return this._events=this._events.filter((e=>e.tag!==i||e.listener!=t||(!!n||(n=!0,s.push(e),!1)))),s.forEach((e=>{this._stopEvent(e)})),this}_removeAllListeners(e){let t=[];if(null==e)t=this._events,this._events=[];else{const s=r(e);this._events=this._events.filter((e=>e.tag!==s||(t.push(e),!1)))}return t.forEach((e=>{this._stopEvent(e)})),this}_listenerCount(e){if(!e)return this._events.length;const t=r(e);return this._events.filter((e=>e.tag===t)).length}_listeners(e){if(null==e)return this._events.map((e=>e.listener));const t=r(e);return this._events.filter((e=>e.tag===t)).map((e=>e.listener))}}const L=1e3,R=2,P=3e4;function x(t,s,n=(()=>!0)){return e(this,void 0,void 0,(function*(){let e=0,i=0;for(;;)try{return yield t()}catch(t){if(i++,i>=s||!n(t))throw t;if(yield j(e),!n(t))throw t;e=0===e?L:Math.min(P,R*e)}}))}function j(e){return new Promise((t=>setTimeout(t,e)))}function H(e,t){return Promise.race([e,new Promise(((e,s)=>setTimeout((()=>s(new Error("Timeout"))),t)))])}function F(e){return f(e.number)}function M(e){return f(e.blockNumber)}function W(e,t,s){const n=s(t),i=e.findIndex((e=>s(e)>n-A));-1===i?e.length=0:e.splice(0,i),e.push(t)}export{S as AlchemyWebSocketProvider};
|
|
1
|
+
import{aN as e,aT as t,aI as s,aU as n,aV as i,aW as o,aX as r,aH as c,aY as l,aZ as a,a_ as h,a$ as u,B as d,b0 as f,b1 as p,aM as m,aQ as b}from"./index-09298bd0.js";import{A as v,g as y}from"./alchemy-provider-5870b6fa-a9fe5aa5.js";import{WebSocketProvider as g}from"@ethersproject/providers";import"@ethersproject/abstract-provider";import"@ethersproject/contracts";import"zustand";import"@ethersproject/bytes";import"@ethersproject/properties";import"@ethersproject/address";import"@ethersproject/abstract-signer";import"buffer";import"events";import"@ethersproject/constants";import"@ethersproject/transactions";var k={};Object.defineProperty(k,"__esModule",{value:!0});var E=function(){function e(t,s,n){if(void 0===n&&(n={}),this.url=t,this.onclose=null,this.onerror=null,this.onmessage=null,this.onopen=null,this.ondown=null,this.onreopen=null,this.CONNECTING=e.CONNECTING,this.OPEN=e.OPEN,this.CLOSING=e.CLOSING,this.CLOSED=e.CLOSED,this.hasBeenOpened=!1,this.isClosed=!1,this.messageBuffer=[],this.nextRetryTime=0,this.reconnectCount=0,this.lastKnownExtensions="",this.lastKnownProtocol="",this.listeners={},null==s||"string"==typeof s||Array.isArray(s)?this.protocols=s:n=s,this.options=I(n),!this.options.wsConstructor){if("undefined"==typeof WebSocket)throw new Error("WebSocket not present in global scope and no wsConstructor option was provided.");this.options.wsConstructor=WebSocket}this.openNewWebSocket()}return Object.defineProperty(e.prototype,"binaryType",{get:function(){return this.binaryTypeInternal||"blob"},set:function(e){this.binaryTypeInternal=e,this.ws&&(this.ws.binaryType=e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"bufferedAmount",{get:function(){var e=this.ws?this.ws.bufferedAmount:0,t=!1;return this.messageBuffer.forEach((function(s){var n=function(e){return"string"==typeof e?2*e.length:e instanceof ArrayBuffer?e.byteLength:e instanceof Blob?e.size:void 0}(s);null!=n?e+=n:t=!0})),t&&this.debugLog("Some buffered data had unknown length. bufferedAmount() return value may be below the correct amount."),e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"extensions",{get:function(){return this.ws?this.ws.extensions:this.lastKnownExtensions},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"protocol",{get:function(){return this.ws?this.ws.protocol:this.lastKnownProtocol},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"readyState",{get:function(){return this.isClosed?e.CLOSED:e.OPEN},enumerable:!0,configurable:!0}),e.prototype.close=function(e,t){this.disposeSocket(e,t),this.shutdown(),this.debugLog("WebSocket permanently closed by client.")},e.prototype.send=function(e){if(this.isClosed)throw new Error("WebSocket is already in CLOSING or CLOSED state.");this.ws&&this.ws.readyState===this.OPEN?this.ws.send(e):this.messageBuffer.push(e)},e.prototype.reconnect=function(){if(this.isClosed)throw new Error("Cannot call reconnect() on socket which is permanently closed.");this.disposeSocket(1e3,"Client requested reconnect."),this.handleClose(void 0)},e.prototype.addEventListener=function(e,t){this.listeners[e]||(this.listeners[e]=[]),this.listeners[e].push(t)},e.prototype.dispatchEvent=function(e){return this.dispatchEventOfType(e.type,e)},e.prototype.removeEventListener=function(e,t){this.listeners[e]&&(this.listeners[e]=this.listeners[e].filter((function(e){return e!==t})))},e.prototype.openNewWebSocket=function(){var e=this;if(!this.isClosed){var t=this.options,s=t.connectTimeout,n=t.wsConstructor;this.debugLog("Opening new WebSocket to "+this.url+".");var i=new n(this.url,this.protocols);i.onclose=function(t){return e.handleClose(t)},i.onerror=function(t){return e.handleError(t)},i.onmessage=function(t){return e.handleMessage(t)},i.onopen=function(t){return e.handleOpen(t)},this.connectTimeoutId=setTimeout((function(){e.clearConnectTimeout(),e.disposeSocket(),e.handleClose(void 0)}),s),this.ws=i}},e.prototype.handleOpen=function(e){var t=this;if(this.ws&&!this.isClosed){var s=this.options.allClearResetTime;this.debugLog("WebSocket opened."),null!=this.binaryTypeInternal?this.ws.binaryType=this.binaryTypeInternal:this.binaryTypeInternal=this.ws.binaryType,this.clearConnectTimeout(),this.hasBeenOpened?this.dispatchEventOfType("reopen",e):(this.dispatchEventOfType("open",e),this.hasBeenOpened=!0),this.messageBuffer.forEach((function(e){return t.send(e)})),this.messageBuffer=[],this.allClearTimeoutId=setTimeout((function(){t.clearAllClearTimeout(),t.nextRetryTime=0,t.reconnectCount=0;var e=s/1e3|0;t.debugLog("WebSocket remained open for "+e+" seconds. Resetting retry time and count.")}),s)}},e.prototype.handleMessage=function(e){this.isClosed||this.dispatchEventOfType("message",e)},e.prototype.handleClose=function(e){var t=this;if(!this.isClosed){var s=this.options,n=s.maxReconnectAttempts,i=s.shouldReconnect;if(this.clearConnectTimeout(),this.clearAllClearTimeout(),this.ws&&(this.lastKnownExtensions=this.ws.extensions,this.lastKnownProtocol=this.ws.protocol,this.disposeSocket()),this.dispatchEventOfType("down",e),this.reconnectCount>=n)this.stopReconnecting(e,this.getTooManyFailedReconnectsMessage());else{var o=!e||i(e);"boolean"==typeof o?this.handleWillReconnect(o,e,"Provided shouldReconnect() returned false. Closing permanently."):o.then((function(s){t.isClosed||t.handleWillReconnect(s,e,"Provided shouldReconnect() resolved to false. Closing permanently.")}))}}},e.prototype.handleError=function(e){this.dispatchEventOfType("error",e),this.debugLog("WebSocket encountered an error.")},e.prototype.handleWillReconnect=function(e,t,s){e?this.reestablishConnection():this.stopReconnecting(t,s)},e.prototype.reestablishConnection=function(){var e=this,t=this.options,s=t.minReconnectDelay,n=t.maxReconnectDelay,i=t.reconnectBackoffFactor;this.reconnectCount++;var o=this.nextRetryTime;this.nextRetryTime=Math.max(s,Math.min(this.nextRetryTime*i,n)),setTimeout((function(){return e.openNewWebSocket()}),o);var r=o/1e3|0;this.debugLog("WebSocket was closed. Re-opening in "+r+" seconds.")},e.prototype.stopReconnecting=function(e,t){this.debugLog(t),this.shutdown(),e&&this.dispatchEventOfType("close",e)},e.prototype.shutdown=function(){this.isClosed=!0,this.clearAllTimeouts(),this.messageBuffer=[],this.disposeSocket()},e.prototype.disposeSocket=function(e,t){this.ws&&(this.ws.onerror=N,this.ws.onclose=N,this.ws.onmessage=N,this.ws.onopen=N,this.ws.close(e,t),this.ws=void 0)},e.prototype.clearAllTimeouts=function(){this.clearConnectTimeout(),this.clearAllClearTimeout()},e.prototype.clearConnectTimeout=function(){null!=this.connectTimeoutId&&(clearTimeout(this.connectTimeoutId),this.connectTimeoutId=void 0)},e.prototype.clearAllClearTimeout=function(){null!=this.allClearTimeoutId&&(clearTimeout(this.allClearTimeoutId),this.allClearTimeoutId=void 0)},e.prototype.dispatchEventOfType=function(e,t){var s=this;switch(e){case"close":this.onclose&&this.onclose(t);break;case"error":this.onerror&&this.onerror(t);break;case"message":this.onmessage&&this.onmessage(t);break;case"open":this.onopen&&this.onopen(t);break;case"down":this.ondown&&this.ondown(t);break;case"reopen":this.onreopen&&this.onreopen(t)}return e in this.listeners&&this.listeners[e].slice().forEach((function(e){return s.callListener(e,t)})),!t||!t.defaultPrevented},e.prototype.callListener=function(e,t){"function"==typeof e?e.call(this,t):e.handleEvent.call(this,t)},e.prototype.debugLog=function(e){this.options.debug&&console.log(e)},e.prototype.getTooManyFailedReconnectsMessage=function(){var e,t=this.options.maxReconnectAttempts;return"Failed to reconnect after "+t+" "+(e="attempt",(1===t?e:e+"s")+". Closing permanently.")},e.DEFAULT_OPTIONS={allClearResetTime:5e3,connectTimeout:5e3,debug:!1,minReconnectDelay:1e3,maxReconnectDelay:3e4,maxReconnectAttempts:Number.POSITIVE_INFINITY,reconnectBackoffFactor:1.5,shouldReconnect:function(){return!0},wsConstructor:void 0},e.CONNECTING=0,e.OPEN=1,e.CLOSING=2,e.CLOSED=3,e}(),w=k.default=E;function I(e){var t={};return Object.keys(E.DEFAULT_OPTIONS).forEach((function(s){var n=e[s];t[s]=void 0===n?E.DEFAULT_OPTIONS[s]:n})),t}function N(){}class B{constructor(e){this.provider=e,this.maxBackfillBlocks=120}getNewHeadsBackfill(t,s,n){return e(this,void 0,void 0,(function*(){O(t);const e=yield this.getBlockNumber();if(O(t),0===s.length)return this.getHeadEventsInRange(Math.max(n,e-this.maxBackfillBlocks)+1,e+1);const i=f(s[s.length-1].number),o=e-this.maxBackfillBlocks+1;if(i<=o)return this.getHeadEventsInRange(o,e+1);const r=yield this.getReorgHeads(t,s);O(t);const c=yield this.getHeadEventsInRange(i+1,e+1);return O(t),[...r,...c]}))}getLogsBackfill(t,s,n,i){return e(this,void 0,void 0,(function*(){O(t);const e=yield this.getBlockNumber();if(O(t),0===n.length)return this.getLogsInRange(s,Math.max(i,e-this.maxBackfillBlocks)+1,e+1);const o=f(n[n.length-1].blockNumber),r=e-this.maxBackfillBlocks+1;if(o<r)return this.getLogsInRange(s,r,e+1);const c=yield this.getCommonAncestor(t,n);O(t);const l=n.filter((e=>f(e.blockNumber)>c.blockNumber)).map((e=>Object.assign(Object.assign({},e),{removed:!0}))),a=c.blockNumber===Number.NEGATIVE_INFINITY?f(n[0].blockNumber):c.blockNumber;let h=yield this.getLogsInRange(s,a,e+1);return h=h.filter((e=>e&&(f(e.blockNumber)>c.blockNumber||f(e.logIndex)>c.logIndex))),O(t),[...l,...h]}))}setMaxBackfillBlock(e){this.maxBackfillBlocks=e}getBlockNumber(){return e(this,void 0,void 0,(function*(){const e=yield this.provider.send("eth_blockNumber");return f(e)}))}getHeadEventsInRange(t,s){return e(this,void 0,void 0,(function*(){if(t>=s)return[];const e=[];for(let n=t;n<s;n++)e.push({method:"eth_getBlockByNumber",params:[p(n),!1]});return(yield this.provider.sendBatch(e)).map(T)}))}getReorgHeads(t,s){return e(this,void 0,void 0,(function*(){const e=[];for(let n=s.length-1;n>=0;n--){const i=s[n],o=yield this.getBlockByNumber(f(i.number));if(O(t),i.hash===o.hash)break;e.push(T(o))}return e.reverse()}))}getBlockByNumber(t){return e(this,void 0,void 0,(function*(){return this.provider.send("eth_getBlockByNumber",[p(t),!1])}))}getCommonAncestor(t,s){return e(this,void 0,void 0,(function*(){let e=yield this.getBlockByNumber(f(s[s.length-1].blockNumber));O(t);for(let t=s.length-1;t>=0;t--){const n=s[t];if(n.blockNumber!==e.number&&(e=yield this.getBlockByNumber(f(n.blockNumber))),n.blockHash===e.hash)return{blockNumber:f(n.blockNumber),logIndex:f(n.logIndex)}}return{blockNumber:Number.NEGATIVE_INFINITY,logIndex:Number.NEGATIVE_INFINITY}}))}getLogsInRange(t,s,n){return e(this,void 0,void 0,(function*(){if(s>=n)return[];const e=Object.assign(Object.assign({},t),{fromBlock:p(s),toBlock:p(n-1)});return this.provider.send("eth_getLogs",[e])}))}}function T(e){const t=Object.assign({},e);return delete t.totalDifficulty,delete t.transactions,delete t.uncles,t}function C(e,t){const s=new Set,n=[];return e.forEach((e=>{const i=t(e);s.has(i)||(s.add(i),n.push(e))})),n}const _=new Error("Cancelled");function O(e){if(e())throw _}const A=10;class S extends g{constructor(s,n){var i;const o=v.getApiKey(s.apiKey),r=v.getAlchemyNetwork(s.network),c=v.getAlchemyConnectionInfo(r,o,"wss"),l=`alchemy-sdk-${m}`;super(new w(null!==(i=s.url)&&void 0!==i?i:c.url,l,{wsConstructor:null!=n?n:"undefined"!=typeof process&&null!=process&&null!=process.versions&&null!=process.versions.node?require("websocket").w3cwebsocket:WebSocket}),b[r]),this._events=[],this.virtualSubscriptionsById=new Map,this.virtualIdsByPhysicalId=new Map,this.handleMessage=e=>{const t=JSON.parse(e.data);if(!function(e){return!function(e){return Array.isArray(e)||"2.0"===e.jsonrpc&&void 0!==e.id}(e)}(t))return;const s=t.params.subscription,n=this.virtualIdsByPhysicalId.get(s);if(!n)return;const i=this.virtualSubscriptionsById.get(n);if("eth_subscribe"===i.method)switch(i.params[0]){case"newHeads":{const e=i,o=t,{isBackfilling:r,backfillBuffer:c}=e,{result:l}=o.params;r?function(e,t){W(e,t,F)}(c,l):s!==n?this.emitAndRememberEvent(n,l,F):this.rememberEvent(n,l,F);break}case"logs":{const e=i,o=t,{isBackfilling:r,backfillBuffer:c}=e,{result:l}=o.params;r?function(e,t){W(e,t,M)}(c,l):n!==s?this.emitAndRememberEvent(n,l,M):this.rememberEvent(n,l,M);break}default:if(s!==n){const{result:e}=t.params;this.emitEvent(n,e)}}},this.handleReopen=()=>{this.virtualIdsByPhysicalId.clear();const{cancel:t,isCancelled:s}=function(){let e=!1;return{cancel:()=>e=!0,isCancelled:()=>e}}();this.cancelBackfill=t;for(const t of this.virtualSubscriptionsById.values())(()=>{e(this,void 0,void 0,(function*(){try{yield this.resubscribeAndBackfill(s,t)}catch(e){s()||console.error(`Error while backfilling "${t.params[0]}" subscription. Some events may be missing.`,e)}}))})();this.startHeartbeat()},this.stopHeartbeatAndBackfill=()=>{null!=this.heartbeatIntervalId&&(clearInterval(this.heartbeatIntervalId),this.heartbeatIntervalId=void 0),this.cancelBackfill()},this.apiKey=o,this.backfiller=new B(this),this.addSocketListeners(),this.startHeartbeat(),this.cancelBackfill=t}static getNetwork(e){return"string"==typeof e&&e in s?s[e]:y(e)}on(e,t){return this._addEventListener(e,t,!1)}once(e,t){return this._addEventListener(e,t,!0)}off(e,t){return n(e)?this._off(e,t):super.off(e,t)}removeAllListeners(e){return void 0!==e&&n(e)?this._removeAllListeners(e):super.removeAllListeners(e)}listenerCount(e){return void 0!==e&&n(e)?this._listenerCount(e):super.listenerCount(e)}listeners(e){return void 0!==e&&n(e)?this._listeners(e):super.listeners(e)}_addEventListener(e,t,s){if(n(e)){i(e);const n=new o(r(e),t,s);return this._events.push(n),this._startEvent(n),this}return super._addEventListener(e,t,s)}_startEvent(e){[...l,"block","filter"].includes(e.type)?this.customStartEvent(e):super._startEvent(e)}_subscribe(t,s,n,i){return e(this,void 0,void 0,(function*(){let e=this._subIds[t];const o=yield this.getBlockNumber();null==e&&(e=Promise.all(s).then((e=>this.send("eth_subscribe",e))),this._subIds[t]=e);const r=yield e,c=yield Promise.all(s);this.virtualSubscriptionsById.set(r,{event:i,method:"eth_subscribe",params:c,startingBlockNumber:o,virtualId:r,physicalId:r,sentEvents:[],isBackfilling:!1,backfillBuffer:[]}),this.virtualIdsByPhysicalId.set(r,r),this._subs[r]={tag:t,processFunc:n}}))}emit(e,...t){if(n(e)){let s=!1;const n=[],i=r(e);return this._events=this._events.filter((e=>e.tag!==i||(setTimeout((()=>{e.listener.apply(this,t)}),0),s=!0,!e.once||(n.push(e),!1)))),n.forEach((e=>{this._stopEvent(e)})),s}return super.emit(e,...t)}sendBatch(t){return e(this,void 0,void 0,(function*(){let e=0;const s=t.map((({method:t,params:s})=>({method:t,params:s,jsonrpc:"2.0",id:"alchemy-sdk:"+e++})));return this.sendBatchConcurrently(s)}))}destroy(){return this.removeSocketListeners(),this.stopHeartbeatAndBackfill(),super.destroy()}isCommunityResource(){return this.apiKey===c}_stopEvent(e){let t=e.tag;if(l.includes(e.type)){if(this._events.filter((e=>l.includes(e.type))).length)return}else if("tx"===e.type){if(this._events.filter((e=>"tx"===e.type)).length)return;t="tx"}else if(this.listenerCount(e.event))return;const s=this._subIds[t];s&&(delete this._subIds[t],s.then((e=>{this._subs[e]&&(delete this._subs[e],this.send("eth_unsubscribe",[e]))})))}addSocketListeners(){this._websocket.addEventListener("message",this.handleMessage),this._websocket.addEventListener("reopen",this.handleReopen),this._websocket.addEventListener("down",this.stopHeartbeatAndBackfill)}removeSocketListeners(){this._websocket.removeEventListener("message",this.handleMessage),this._websocket.removeEventListener("reopen",this.handleReopen),this._websocket.removeEventListener("down",this.stopHeartbeatAndBackfill)}resubscribeAndBackfill(t,s){return e(this,void 0,void 0,(function*(){const{virtualId:e,method:n,params:i,sentEvents:o,backfillBuffer:r,startingBlockNumber:c}=s;s.isBackfilling=!0,r.length=0;try{const l=yield this.send(n,i);switch(O(t),s.physicalId=l,this.virtualIdsByPhysicalId.set(l,e),i[0]){case"newHeads":{const s=yield x((()=>H(this.backfiller.getNewHeadsBackfill(t,o,c),6e4)),5,(()=>!t()));O(t);(function(e){return C(e,(e=>e.hash))})([...s,...r]).forEach((t=>this.emitNewHeadsEvent(e,t)));break}case"logs":{const s=i[1]||{},n=yield x((()=>H(this.backfiller.getLogsBackfill(t,s,o,c),6e4)),5,(()=>!t()));O(t);(function(e){return C(e,(e=>`${e.blockHash}/${e.logIndex}`))})([...n,...r]).forEach((t=>this.emitLogsEvent(e,t)));break}}}finally{s.isBackfilling=!1,r.length=0}}))}emitNewHeadsEvent(e,t){this.emitAndRememberEvent(e,t,F)}emitLogsEvent(e,t){this.emitAndRememberEvent(e,t,M)}emitAndRememberEvent(e,t,s){this.rememberEvent(e,t,s),this.emitEvent(e,t)}emitEvent(e,t){const s=this.virtualSubscriptionsById.get(e);s&&this.emitGenericEvent(s,t)}rememberEvent(e,t,s){const n=this.virtualSubscriptionsById.get(e);n&&W(n.sentEvents,Object.assign({},t),s)}emitGenericEvent(e,t){this.emitProcessFn(e.event)(t)}startHeartbeat(){null==this.heartbeatIntervalId&&(this.heartbeatIntervalId=setInterval((()=>e(this,void 0,void 0,(function*(){try{yield H(this.send("net_version"),1e4)}catch(e){this._websocket.reconnect()}}))),3e4))}sendBatchConcurrently(t){return e(this,void 0,void 0,(function*(){return Promise.all(t.map((e=>this.send(e.method,e.params))))}))}customStartEvent(e){if(e.type===a){const{fromAddress:t,toAddress:s,hashesOnly:n}=e;this._subscribe(e.tag,[h.PENDING_TRANSACTIONS,{fromAddress:t,toAddress:s,hashesOnly:n}],this.emitProcessFn(e),e)}else if(e.type===u){const{addresses:t,includeRemoved:s,hashesOnly:n}=e;this._subscribe(e.tag,[h.MINED_TRANSACTIONS,{addresses:t,includeRemoved:s,hashesOnly:n}],this.emitProcessFn(e),e)}else"block"===e.type?this._subscribe("block",["newHeads"],this.emitProcessFn(e),e):"filter"===e.type&&this._subscribe(e.tag,["logs",this._getFilter(e.filter)],this.emitProcessFn(e),e)}emitProcessFn(e){switch(e.type){case a:return t=>this.emit({method:h.PENDING_TRANSACTIONS,fromAddress:e.fromAddress,toAddress:e.toAddress,hashesOnly:e.hashesOnly},t);case u:return t=>this.emit({method:h.MINED_TRANSACTIONS,addresses:e.addresses,includeRemoved:e.includeRemoved,hashesOnly:e.hashesOnly},t);case"block":return e=>{const t=d.from(e.number).toNumber();this._emitted.block=t,this.emit("block",t)};case"filter":return t=>{null==t.removed&&(t.removed=!1),this.emit(e.filter,this.formatter.filterLog(t))};default:throw new Error("Invalid event type to `emitProcessFn()`")}}_off(e,t){if(null==t)return this.removeAllListeners(e);const s=[];let n=!1;const i=r(e);return this._events=this._events.filter((e=>e.tag!==i||e.listener!=t||(!!n||(n=!0,s.push(e),!1)))),s.forEach((e=>{this._stopEvent(e)})),this}_removeAllListeners(e){let t=[];if(null==e)t=this._events,this._events=[];else{const s=r(e);this._events=this._events.filter((e=>e.tag!==s||(t.push(e),!1)))}return t.forEach((e=>{this._stopEvent(e)})),this}_listenerCount(e){if(!e)return this._events.length;const t=r(e);return this._events.filter((e=>e.tag===t)).length}_listeners(e){if(null==e)return this._events.map((e=>e.listener));const t=r(e);return this._events.filter((e=>e.tag===t)).map((e=>e.listener))}}const L=1e3,R=2,P=3e4;function x(t,s,n=(()=>!0)){return e(this,void 0,void 0,(function*(){let e=0,i=0;for(;;)try{return yield t()}catch(t){if(i++,i>=s||!n(t))throw t;if(yield j(e),!n(t))throw t;e=0===e?L:Math.min(P,R*e)}}))}function j(e){return new Promise((t=>setTimeout(t,e)))}function H(e,t){return Promise.race([e,new Promise(((e,s)=>setTimeout((()=>s(new Error("Timeout"))),t)))])}function F(e){return f(e.number)}function M(e){return f(e.blockNumber)}function W(e,t,s){const n=s(t),i=e.findIndex((e=>s(e)>n-A));-1===i?e.length=0:e.splice(0,i),e.push(t)}export{S as AlchemyWebSocketProvider};
|