@pufferfinance/puffer-sdk 1.30.2 → 1.31.1
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/api/puffer-client-helpers.cjs +1 -1
- package/dist/api/puffer-client-helpers.cjs.map +1 -1
- package/dist/api/puffer-client-helpers.js +42 -42
- package/dist/api/puffer-client-helpers.js.map +1 -1
- package/dist/api/puffer-client.cjs +1 -1
- package/dist/api/puffer-client.js +2 -2
- package/dist/ccip-DLz1DupU.cjs +2 -0
- package/dist/ccip-DLz1DupU.cjs.map +1 -0
- package/dist/ccip-oHxlHOaH.js +158 -0
- package/dist/ccip-oHxlHOaH.js.map +1 -0
- package/dist/chains/constants.cjs +1 -1
- package/dist/chains/constants.d.ts +2 -1
- package/dist/chains/constants.js +1 -1
- package/dist/constants-C-rrOSfg.js +3837 -0
- package/dist/constants-C-rrOSfg.js.map +1 -0
- package/dist/constants-PXB3A4Yl.cjs +38 -0
- package/dist/constants-PXB3A4Yl.cjs.map +1 -0
- package/dist/contracts/abis/mainnet/Teller.cjs +1 -1
- package/dist/contracts/abis/mainnet/Teller.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/Teller.d.ts +234 -18
- package/dist/contracts/abis/mainnet/Teller.js +165 -13
- package/dist/contracts/abis/mainnet/Teller.js.map +1 -1
- package/dist/contracts/addresses.cjs +1 -1
- package/dist/contracts/addresses.js +1 -1
- package/dist/contracts/handlers/carrot-staking-handler.cjs +1 -1
- package/dist/contracts/handlers/carrot-staking-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/carrot-staking-handler.js +2 -2
- package/dist/contracts/handlers/carrot-vesting-handler.cjs +1 -1
- package/dist/contracts/handlers/carrot-vesting-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/carrot-vesting-handler.js +2 -2
- package/dist/contracts/handlers/concrete-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/concrete-vault-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/concrete-vault-handler.js +2 -2
- package/dist/contracts/handlers/distributor-handler.cjs +1 -1
- package/dist/contracts/handlers/distributor-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/distributor-handler.js +2 -2
- package/dist/contracts/handlers/erc20-permit-handler.cjs +1 -1
- package/dist/contracts/handlers/erc20-permit-handler.cjs.map +1 -1
- package/dist/contracts/handlers/erc20-permit-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/erc20-permit-handler.js +3 -3
- package/dist/contracts/handlers/erc20-permit-handler.js.map +1 -1
- package/dist/contracts/handlers/gauge-registry-handler.cjs +1 -1
- package/dist/contracts/handlers/gauge-registry-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/gauge-registry-handler.js +2 -2
- package/dist/contracts/handlers/guardian-module-handler.cjs +1 -1
- package/dist/contracts/handlers/guardian-module-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/guardian-module-handler.js +2 -2
- package/dist/contracts/handlers/institutional-access-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/institutional-access-manager-handler.cjs.map +1 -1
- package/dist/contracts/handlers/institutional-access-manager-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/institutional-access-manager-handler.js +48 -49
- package/dist/contracts/handlers/institutional-access-manager-handler.js.map +1 -1
- package/dist/contracts/handlers/institutional-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/institutional-vault-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/institutional-vault-handler.js +2 -2
- package/dist/contracts/handlers/l1-reward-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/l1-reward-manager-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/l1-reward-manager-handler.js +2 -2
- package/dist/contracts/handlers/l2-reward-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/l2-reward-manager-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/l2-reward-manager-handler.js +2 -2
- package/dist/contracts/handlers/lagoon-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/lagoon-vault-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/lagoon-vault-handler.js +2 -2
- package/dist/contracts/handlers/mtw-carrot-handler.cjs +1 -1
- package/dist/contracts/handlers/mtw-carrot-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/mtw-carrot-handler.js +2 -2
- package/dist/contracts/handlers/non-restaking-withdrawal-credentials-handler.cjs +1 -1
- package/dist/contracts/handlers/non-restaking-withdrawal-credentials-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/non-restaking-withdrawal-credentials-handler.js +2 -2
- package/dist/contracts/handlers/nucleus-accountant-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-accountant-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/nucleus-accountant-handler.js +1 -1
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.js +2 -2
- package/dist/contracts/handlers/nucleus-boring-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-boring-vault-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/nucleus-boring-vault-handler.js +2 -2
- package/dist/contracts/handlers/nucleus-teller-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-teller-handler.cjs.map +1 -1
- package/dist/contracts/handlers/nucleus-teller-handler.d.ts +1820 -5316
- package/dist/contracts/handlers/nucleus-teller-handler.js +63 -48
- package/dist/contracts/handlers/nucleus-teller-handler.js.map +1 -1
- package/dist/contracts/handlers/puf-locker-handler.cjs +1 -1
- package/dist/contracts/handlers/puf-locker-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/puf-locker-handler.js +2 -2
- package/dist/contracts/handlers/puffer-depositor-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-depositor-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/puffer-depositor-handler.js +2 -2
- package/dist/contracts/handlers/puffer-l2-depositor-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-l2-depositor-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/puffer-l2-depositor-handler.js +2 -2
- package/dist/contracts/handlers/puffer-oracle-v2-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-oracle-v2-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/puffer-oracle-v2-handler.js +2 -2
- package/dist/contracts/handlers/puffer-protocol-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-protocol-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/puffer-protocol-handler.js +2 -2
- package/dist/contracts/handlers/puffer-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-vault-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/puffer-vault-handler.js +2 -2
- package/dist/contracts/handlers/puffer-withdrawal-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-withdrawal-manager-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/puffer-withdrawal-manager-handler.js +2 -2
- package/dist/contracts/handlers/validator-ticket-handler.cjs +1 -1
- package/dist/contracts/handlers/validator-ticket-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/validator-ticket-handler.js +2 -2
- package/dist/contracts/handlers/vl-puffer-handler.cjs +1 -1
- package/dist/contracts/handlers/vl-puffer-handler.d.ts +1549 -5281
- package/dist/contracts/handlers/vl-puffer-handler.js +2 -2
- package/dist/contracts/tokens.cjs +1 -1
- package/dist/contracts/tokens.js +1 -1
- package/dist/contracts/vaults-addresses.cjs +1 -1
- package/dist/contracts/vaults-addresses.js +1 -1
- package/dist/{getContract-Cgkj3G1g.cjs → getContract-BL-M-dQc.cjs} +2 -2
- package/dist/{getContract-Cgkj3G1g.cjs.map → getContract-BL-M-dQc.cjs.map} +1 -1
- package/dist/{getContract-Dxh0At3n.js → getContract-BVdsHXdp.js} +11 -11
- package/dist/{getContract-Dxh0At3n.js.map → getContract-BVdsHXdp.js.map} +1 -1
- package/dist/http-BtVgpo6v.cjs +5 -0
- package/dist/http-BtVgpo6v.cjs.map +1 -0
- package/dist/{http-Clq2Hoy9.js → http-CJGQ2e7o.js} +1687 -1533
- package/dist/http-CJGQ2e7o.js.map +1 -0
- package/dist/{localBatchGatewayRequest-Dm7yXllz.js → localBatchGatewayRequest-BchhbxQ2.js} +18 -18
- package/dist/{localBatchGatewayRequest-Dm7yXllz.js.map → localBatchGatewayRequest-BchhbxQ2.js.map} +1 -1
- package/dist/{localBatchGatewayRequest-CuvkLo7E.cjs → localBatchGatewayRequest-Bz0YuhIJ.cjs} +2 -2
- package/dist/{localBatchGatewayRequest-CuvkLo7E.cjs.map → localBatchGatewayRequest-Bz0YuhIJ.cjs.map} +1 -1
- package/dist/main.cjs +1 -1
- package/dist/main.js +1 -1
- package/dist/{secp256k1-BbMQ_WWG.js → secp256k1-Bm3EstvG.js} +62 -62
- package/dist/{secp256k1-BbMQ_WWG.js.map → secp256k1-Bm3EstvG.js.map} +1 -1
- package/dist/{secp256k1-DrUar53F.cjs → secp256k1-cRXUqGNw.cjs} +2 -2
- package/dist/{secp256k1-DrUar53F.cjs.map → secp256k1-cRXUqGNw.cjs.map} +1 -1
- package/dist/utils/version.cjs +1 -1
- package/dist/utils/version.js +1 -1
- package/dist/writeContract-D9xqoPDa.js +3527 -0
- package/dist/writeContract-D9xqoPDa.js.map +1 -0
- package/dist/writeContract-Gli_t0c1.cjs +6 -0
- package/dist/writeContract-Gli_t0c1.cjs.map +1 -0
- package/package.json +13 -13
- package/dist/ccip-BTVr5-VZ.js +0 -150
- package/dist/ccip-BTVr5-VZ.js.map +0 -1
- package/dist/ccip-DNgt9tzv.cjs +0 -2
- package/dist/ccip-DNgt9tzv.cjs.map +0 -1
- package/dist/constants-CUYeD71n.js +0 -2491
- package/dist/constants-CUYeD71n.js.map +0 -1
- package/dist/constants-Dhpa19or.cjs +0 -8
- package/dist/constants-Dhpa19or.cjs.map +0 -1
- package/dist/http-C-TIpf-V.cjs +0 -5
- package/dist/http-C-TIpf-V.cjs.map +0 -1
- package/dist/http-Clq2Hoy9.js.map +0 -1
- package/dist/writeContract-Bq8HaVjW.js +0 -4618
- package/dist/writeContract-Bq8HaVjW.js.map +0 -1
- package/dist/writeContract-PoCaxmyT.cjs +0 -36
- package/dist/writeContract-PoCaxmyT.cjs.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { V as l } from "../../constants-
|
|
1
|
+
import { V as l } from "../../constants-C-rrOSfg.js";
|
|
2
2
|
import { vlPUFFER as u } from "../abis/mainnet/vlPUFFER.js";
|
|
3
3
|
import { ERC20PermitHandler as C } from "./erc20-permit-handler.js";
|
|
4
4
|
import { TOKENS_ADDRESSES as d, Token as c } from "../tokens.js";
|
|
5
|
-
import { g } from "../../getContract-
|
|
5
|
+
import { g } from "../../getContract-BVdsHXdp.js";
|
|
6
6
|
class v {
|
|
7
7
|
/**
|
|
8
8
|
* Create the handler for the `vlPUFFER` contract exposing methods to
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../constants-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../constants-PXB3A4Yl.cjs");var C=(e=>(e.USDT="USDT",e.USDC="USDC",e.DAI="DAI",e.WETH="WETH",e.stETH="stETH",e.wstETH="wstETH",e.eETH="eETH",e.cbETH="cbETH",e.ALT="ALT",e.pufETHwstE="pufETHwstE",e.pufETH="pufETH",e.xPufETH="xPufETH",e.ctTACpufETH="ctTACpufETH",e.tacpufETH="tacpufETH",e.WBTC="WBTC",e.LBTC="LBTC",e.tBTC="tBTC",e.cbBTC="cbBTC",e.pumpBTC="pumpBTC",e.SolvBTC="SolvBTC",e.FBTC="FBTC",e.PUFFER="PUFFER",e.vePUFFER="vePUFFER",e.CARROT="CARROT",e.lvlUSD="lvlUSD",e.slvlUSD="slvlUSD",e.mtwCARROT="mtwCARROT",e.sCARROT="sCARROT",e.LINK="LINK",e.TEST="TEST",e.VT="VT",e.EIGEN="EIGEN",e.ARPA="ARPA",e.vlPUFFER="vlPUFFER",e))(C||{}),i=(e=>(e.unifiETH="unifiETH",e.unifiUSD="unifiUSD",e.unifiBTC="unifiBTC",e.pufETHs="pufETHs",e))(i||{});const n={VT:{[a.Chain.Mainnet]:"0x7D26AD6F6BA9D6bA1de0218Ae5e20CD3a273a55A",[a.Chain.Holesky]:"0xB028194785178a94Fe608994A4d5AD84c285A640"},TEST:{[a.Chain.Sepolia]:"0xd26e3540a0a368845b234736a0700e0a5a821bba",[a.Chain.OptimismSepolia]:"0x7Fa13D6CB44164ea09dF8BCc673A8849092D435b"},LINK:{[a.Chain.BaseSepolia]:"0xe4ab69c077896252fafbd49efd26b5d171a32410",[a.Chain.OptimismSepolia]:"0xE4aB69C077896252FAFBD49EFD26B5D171A32410"},USDT:{[a.Chain.Mainnet]:"0xdac17f958d2ee523a2206206994597c13d831ec7",[a.Chain.Holesky]:"0xd5bef2c64f418fd460319521d37862327122e3bc",[a.Chain.Sepolia]:"0xaa8e23fb1079ea71e0a56f48a2aa51851d8433d0"},USDC:{[a.Chain.Mainnet]:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",[a.Chain.Holesky]:"0x64Cc0de0429bcb87e875905a0c313ec88f6d1d3E"},DAI:{[a.Chain.Mainnet]:"0x6b175474e89094c44da98b954eedeac495271d0f",[a.Chain.Holesky]:"0x4478905505ddfb7eA1c8A9f46eAEC3695cE542ac"},WETH:{[a.Chain.Mainnet]:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",[a.Chain.Holesky]:"0x1d181cBd1825e9eBC6AD966878D555A7215FF4F0",[a.Chain.Hoodi]:"0x251609d3e04165CA5CfaBa5DEE70A4e47863D060"},stETH:{[a.Chain.Mainnet]:"0xae7ab96520de3a18e5e111b5eaab095312d7fe84",[a.Chain.Holesky]:"0x3F1c547b21f65e10480dE3ad8E19fAAC46C95034"},wstETH:{[a.Chain.Mainnet]:"0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0",[a.Chain.Holesky]:"0x8d09a4502Cc8Cf1547aD300E066060D043f6982D"},eETH:{[a.Chain.Mainnet]:"0x35fa164735182de50811e8e2e824cfb9b6118ac2",[a.Chain.Holesky]:"0x7ba2ee123b5977e3da040e1eacb3a61c82c17876"},cbETH:{[a.Chain.Mainnet]:"0xbe9895146f7af43049ca1c1ae358b0541ea49704",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},ALT:{[a.Chain.Mainnet]:"0x8457ca5040ad67fdebbcc8edce889a335bc0fbfb",[a.Chain.Holesky]:"0xaf5588a571b42c7e50bd440d80f9bf94a4db94ee"},pufETHwstE:{[a.Chain.Mainnet]:"0xeeda34a377dd0ca676b9511ee1324974fa8d980d",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},pufETH:{[a.Chain.Mainnet]:"0xd9a442856c234a39a81a089c06451ebaa4306a72",[a.Chain.Holesky]:"0x9196830bB4c05504E0A8475A0aD566AceEB6BeC9",[a.Chain.Soneium]:"0x6c460b2c6D6719562D5dA43E5152B375e79B9A8B",[a.Chain.Arbitrum]:"0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF",[a.Chain.Berachain]:"0x417b0Ff8358Eb72867Da92225CaB99BCD5e6F205",[a.Chain.TAC]:"0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF",[a.Chain.Base]:"0x30D91DF53cCCf07e3a5BF6862Db8CFBe1fCB21d3",[a.Chain.Monad]:"0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF",[a.Chain.HyperEVM]:"0x87d00066cf131ff54B72B134a217D5401E5392b6"},xPufETH:{[a.Chain.Mainnet]:"0xD7D2802f6b19843ac4DfE25022771FD83b5A7464",[a.Chain.Base]:"0x23dA5F2d509cb43A59d43C108a43eDf34510eff1",[a.Chain.Bsc]:"0x64274835D88F5c0215da8AADd9A5f2D2A2569381",[a.Chain.ApeChain]:"0x6234E5ef39B12EFdFcbd99dd7F452F27F3fEAE3b",[a.Chain.Zircuit]:"0x9346A5043C590133FE900aec643D9622EDddBA57"},ctTACpufETH:{[a.Chain.Mainnet]:"0x78f314241df1ac151bfd0413eeb51979515f6abd",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},tacpufETH:{[a.Chain.Mainnet]:"0xf2e97704a567e003ed97f2d0976c45b2dda766a0",[a.Chain.TAC]:"0x85AF3C2755f17bA26D7326E8069Bf10719441068",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},WBTC:{[a.Chain.Mainnet]:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},LBTC:{[a.Chain.Mainnet]:"0x8236a87084f8b84306f72007f36f2618a5634494",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},tBTC:{[a.Chain.Mainnet]:"0x18084fbA666a33d37592fA2633fD49a74DD93a88",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},cbBTC:{[a.Chain.Mainnet]:"0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},pumpBTC:{[a.Chain.Mainnet]:"0xf469fbd2abcd6b9de8e169d128226c0fc90a012e",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},SolvBTC:{[a.Chain.Mainnet]:"0x7a56e1c57c7475ccf742a1832b028f0456652f97",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},FBTC:{[a.Chain.Mainnet]:"0xC96dE26018A54D51c097160568752c4E3BD6C364",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},PUFFER:{[a.Chain.Mainnet]:"0x4d1c297d39c5c1277964d0e3f8aa901493664530",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000",[a.Chain.Base]:"0x8dA0baE597aC15fB0924713b1e3c1F624474F3E4",[a.Chain.Bsc]:"0x87d00066cf131ff54B72B134a217D5401E5392b6"},vePUFFER:{[a.Chain.Mainnet]:"0xA55eD5808aeCDF23AE3782C1443185f5D2363ce7"},CARROT:{[a.Chain.Mainnet]:"0x282a69142bac47855c3fbe1693fcc4ba3b4d5ed6",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},lvlUSD:{[a.Chain.Mainnet]:"0x7C1156E515aA1A2E851674120074968C905aAF37",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},slvlUSD:{[a.Chain.Mainnet]:"0x4737d9b4592b40d51e110b94c9c043c6654067ae",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},mtwCARROT:{[a.Chain.Mainnet]:"0x8A5A5DE9db5770123Ff2145F59e9F20047f0A8EC",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},sCARROT:{[a.Chain.Mainnet]:"0x99c599227c65132822f0290d9e5b4b0430d6c0d6",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},EIGEN:{[a.Chain.Mainnet]:"0xec53bF9167f50cDEB3Ae105f56099aaaB9061F83"},ARPA:{[a.Chain.Mainnet]:"0xBA50933C268F567BDC86E1aC131BE072C6B0b71a"},unifiETH:{[a.Chain.Mainnet]:"0x196ead472583bc1e9af7a05f860d9857e1bd3dcc",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},unifiUSD:{[a.Chain.Mainnet]:"0x82c40e07277eBb92935f79cE92268F80dDc7caB4",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},unifiBTC:{[a.Chain.Mainnet]:"0x170d847a8320f3b6a77ee15b0cae430e3ec933a0",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},pufETHs:{[a.Chain.Mainnet]:"0x62a4ce0722ee65635c0f8339dd814d549b6f6735",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},vlPUFFER:{[a.Chain.Mainnet]:"0x1e168460ea0cf3f126ddd3183dc2e376515a5e91"}},c={USDT:"",USDC:"",DAI:"",WETH:"",stETH:"2",wstETH:"1",eETH:"1",cbETH:"2",ALT:"1",pufETHwstE:"v7.0.0",pufETH:"1",xPufETH:"1",ctTACpufETH:"",tacpufETH:"v0.5.0",WBTC:"",LBTC:"",tBTC:"",cbBTC:"",pumpBTC:"",SolvBTC:"",FBTC:"",PUFFER:"1",vePUFFER:"1",CARROT:"1",lvlUSD:"1",slvlUSD:"",mtwCARROT:"",sCARROT:"",LINK:"",TEST:"",VT:"1",EIGEN:"1",ARPA:"1",unifiETH:"1",unifiUSD:"1",unifiBTC:"1",pufETHs:"1",vlPUFFER:"1"},f={pufETHwstE:{[a.Chain.Mainnet]:"0x0e986ed5610121905f03fd3850cebcc00f66166fc3ab760acb4e087d735d9457",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000000000000000000000000000"}};exports.TOKENS_ADDRESSES=n;exports.TOKENS_PERMIT_VERSION=c;exports.TOKENS_SALT=f;exports.Token=C;exports.UnifiToken=i;
|
|
2
2
|
//# sourceMappingURL=tokens.cjs.map
|
package/dist/contracts/tokens.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as a } from "../constants-
|
|
1
|
+
import { C as a } from "../constants-C-rrOSfg.js";
|
|
2
2
|
var c = /* @__PURE__ */ ((e) => (e.USDT = "USDT", e.USDC = "USDC", e.DAI = "DAI", e.WETH = "WETH", e.stETH = "stETH", e.wstETH = "wstETH", e.eETH = "eETH", e.cbETH = "cbETH", e.ALT = "ALT", e.pufETHwstE = "pufETHwstE", e.pufETH = "pufETH", e.xPufETH = "xPufETH", e.ctTACpufETH = "ctTACpufETH", e.tacpufETH = "tacpufETH", e.WBTC = "WBTC", e.LBTC = "LBTC", e.tBTC = "tBTC", e.cbBTC = "cbBTC", e.pumpBTC = "pumpBTC", e.SolvBTC = "SolvBTC", e.FBTC = "FBTC", e.PUFFER = "PUFFER", e.vePUFFER = "vePUFFER", e.CARROT = "CARROT", e.lvlUSD = "lvlUSD", e.slvlUSD = "slvlUSD", e.mtwCARROT = "mtwCARROT", e.sCARROT = "sCARROT", e.LINK = "LINK", e.TEST = "TEST", e.VT = "VT", e.EIGEN = "EIGEN", e.ARPA = "ARPA", e.vlPUFFER = "vlPUFFER", e))(c || {}), f = /* @__PURE__ */ ((e) => (e.unifiETH = "unifiETH", e.unifiUSD = "unifiUSD", e.unifiBTC = "unifiBTC", e.pufETHs = "pufETHs", e))(f || {});
|
|
3
3
|
const d = {
|
|
4
4
|
VT: {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../constants-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../constants-PXB3A4Yl.cjs"),a=require("./tokens.cjs"),n={[a.UnifiToken.unifiETH]:{[e.Chain.Mainnet]:{NucleusBoringVault:"0x196ead472583bc1e9af7a05f860d9857e1bd3dcc",NucleusAccountant:"0xa9fb7e2922216debe3fd5e1bbe7591ee446dc21c",NucleusTeller:"0x08eb2eccdf6ebd7aba601791f23ec5b5f68a1d53"}},[a.UnifiToken.unifiUSD]:{[e.Chain.Mainnet]:{NucleusBoringVault:"0x82c40e07277eBb92935f79cE92268F80dDc7caB4",NucleusAccountant:"0xe0bDb7b9225A2CeB42998dc2E51D4D3CDeb7e3Be",NucleusTeller:"0x5d3Fb47FE7f3F4Ce8fe55518f7E4F7D6061B54DD"}},[a.UnifiToken.unifiBTC]:{[e.Chain.Mainnet]:{NucleusBoringVault:"0x170d847a8320f3b6a77ee15b0cae430e3ec933a0",NucleusAccountant:"0x2afb28b0561d99b5e00829ec2ef54946a00a35f7",NucleusTeller:"0x0743647a607822781f9d0a639454e76289182f0b"}},[a.UnifiToken.pufETHs]:{[e.Chain.Mainnet]:{NucleusBoringVault:"0x62a4ce0722ee65635c0f8339dd814d549b6f6735",NucleusAccountant:"0xa99a92c505ff92c543d9d48295f1f31024afb31f",NucleusTeller:"0xd049ebeaa59b75ba8ee38f9f6830db7293320236"}},[a.Token.ctTACpufETH]:{[e.Chain.Mainnet]:{ConcreteMultiStrategyVault:"0x78f314241df1ac151bfd0413eeb51979515f6abd"}},[a.Token.tacpufETH]:{[e.Chain.Mainnet]:{LagoonVault:"0xf2e97704a567e003ed97f2d0976c45b2dda766a0"},[e.Chain.TAC]:{LagoonVault:"0x85AF3C2755f17bA26D7326E8069Bf10719441068"},[e.Chain.Holesky]:{LagoonVault:"0x0000000000000000000000000000000000000000"}}};exports.VAULTS_ADDRESSES=n;
|
|
2
2
|
//# sourceMappingURL=vaults-addresses.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const i=require("./writeContract-
|
|
2
|
-
//# sourceMappingURL=getContract-
|
|
1
|
+
"use strict";const i=require("./writeContract-Gli_t0c1.cjs");function P({abi:t,address:o,client:f}){const e=f,[u,p]=e?"public"in e&&"wallet"in e?[e.public,e.wallet]:"public"in e?[e.public,void 0]:"wallet"in e?[void 0,e.wallet]:[e,e]:[void 0,void 0],d=u!=null,m=p!=null,l={};let E=!1,w=!1,h=!1;for(const a of t)if(a.type==="function"?a.stateMutability==="view"||a.stateMutability==="pure"?E=!0:w=!0:a.type==="event"&&(h=!0),E&&w&&h)break;return d&&(E&&(l.read=new Proxy({},{get(a,n){return(...c)=>{const{args:s,options:r}=y(c);return i.getAction(u,i.readContract,"readContract")({abi:t,address:o,functionName:n,args:s,...r})}}})),w&&(l.simulate=new Proxy({},{get(a,n){return(...c)=>{const{args:s,options:r}=y(c);return i.getAction(u,i.simulateContract,"simulateContract")({abi:t,address:o,functionName:n,args:s,...r})}}})),h&&(l.createEventFilter=new Proxy({},{get(a,n){return(...c)=>{const s=t.find(g=>g.type==="event"&&g.name===n),{args:r,options:C}=A(c,s);return i.getAction(u,i.createContractEventFilter,"createContractEventFilter")({abi:t,address:o,eventName:n,args:r,...C})}}}),l.getEvents=new Proxy({},{get(a,n){return(...c)=>{const s=t.find(g=>g.type==="event"&&g.name===n),{args:r,options:C}=A(c,s);return i.getAction(u,i.getContractEvents,"getContractEvents")({abi:t,address:o,eventName:n,args:r,...C})}}}),l.watchEvent=new Proxy({},{get(a,n){return(...c)=>{const s=t.find(g=>g.type==="event"&&g.name===n),{args:r,options:C}=A(c,s);return i.getAction(u,i.watchContractEvent,"watchContractEvent")({abi:t,address:o,eventName:n,args:r,...C})}}}))),m&&w&&(l.write=new Proxy({},{get(a,n){return(...c)=>{const{args:s,options:r}=y(c);return i.getAction(p,i.writeContract,"writeContract")({abi:t,address:o,functionName:n,args:s,...r})}}})),(d||m)&&w&&(l.estimateGas=new Proxy({},{get(a,n){return(...c)=>{const{args:s,options:r}=y(c),C=u??p;return i.getAction(C,i.estimateContractGas,"estimateContractGas")({abi:t,address:o,functionName:n,args:s,...r,account:r.account??p.account})}}})),l.address=o,l.abi=t,l}function y(t){const o=t.length&&Array.isArray(t[0]),f=o?t[0]:[],e=(o?t[1]:t[0])??{};return{args:f,options:e}}function A(t,o){let f=!1;Array.isArray(t[0])?f=!0:t.length===1?f=o.inputs.some(p=>p.indexed):t.length===2&&(f=!0);const e=f?t[0]:void 0,u=(f?t[1]:t[0])??{};return{args:e,options:u}}exports.getContract=P;
|
|
2
|
+
//# sourceMappingURL=getContract-BL-M-dQc.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getContract-Cgkj3G1g.cjs","sources":["../node_modules/.pnpm/viem@2.45.0_typescript@5.9.3_zod@4.1.12/node_modules/viem/_esm/actions/getContract.js"],"sourcesContent":["import { getAction } from '../utils/getAction.js';\nimport { createContractEventFilter, } from './public/createContractEventFilter.js';\nimport { estimateContractGas, } from './public/estimateContractGas.js';\nimport { getContractEvents, } from './public/getContractEvents.js';\nimport { readContract, } from './public/readContract.js';\nimport { simulateContract, } from './public/simulateContract.js';\nimport { watchContractEvent, } from './public/watchContractEvent.js';\nimport { writeContract, } from './wallet/writeContract.js';\n/**\n * Gets type-safe interface for performing contract-related actions with a specific `abi` and `address`.\n *\n * - Docs https://viem.sh/docs/contract/getContract\n *\n * Using Contract Instances can make it easier to work with contracts if you don't want to pass the `abi` and `address` properties every time you perform contract actions, e.g. [`readContract`](https://viem.sh/docs/contract/readContract), [`writeContract`](https://viem.sh/docs/contract/writeContract), [`estimateContractGas`](https://viem.sh/docs/contract/estimateContractGas), etc.\n *\n * @example\n * import { createPublicClient, getContract, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const publicClient = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const contract = getContract({\n * address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * abi: parseAbi([\n * 'function balanceOf(address owner) view returns (uint256)',\n * 'function ownerOf(uint256 tokenId) view returns (address)',\n * 'function totalSupply() view returns (uint256)',\n * ]),\n * client: publicClient,\n * })\n */\nexport function getContract({ abi, address, client: client_, }) {\n const client = client_;\n const [publicClient, walletClient] = (() => {\n if (!client)\n return [undefined, undefined];\n if ('public' in client && 'wallet' in client)\n return [client.public, client.wallet];\n if ('public' in client)\n return [client.public, undefined];\n if ('wallet' in client)\n return [undefined, client.wallet];\n return [client, client];\n })();\n const hasPublicClient = publicClient !== undefined && publicClient !== null;\n const hasWalletClient = walletClient !== undefined && walletClient !== null;\n const contract = {};\n let hasReadFunction = false;\n let hasWriteFunction = false;\n let hasEvent = false;\n for (const item of abi) {\n if (item.type === 'function')\n if (item.stateMutability === 'view' || item.stateMutability === 'pure')\n hasReadFunction = true;\n else\n hasWriteFunction = true;\n else if (item.type === 'event')\n hasEvent = true;\n // Exit early if all flags are `true`\n if (hasReadFunction && hasWriteFunction && hasEvent)\n break;\n }\n if (hasPublicClient) {\n if (hasReadFunction)\n contract.read = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n return getAction(publicClient, readContract, 'readContract')({\n abi,\n address,\n functionName,\n args,\n ...options,\n });\n };\n },\n });\n if (hasWriteFunction)\n contract.simulate = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n return getAction(publicClient, simulateContract, 'simulateContract')({\n abi,\n address,\n functionName,\n args,\n ...options,\n });\n };\n },\n });\n if (hasEvent) {\n contract.createEventFilter = new Proxy({}, {\n get(_, eventName) {\n return (...parameters) => {\n const abiEvent = abi.find((x) => x.type === 'event' && x.name === eventName);\n const { args, options } = getEventParameters(parameters, abiEvent);\n return getAction(publicClient, createContractEventFilter, 'createContractEventFilter')({\n abi,\n address,\n eventName,\n args,\n ...options,\n });\n };\n },\n });\n contract.getEvents = new Proxy({}, {\n get(_, eventName) {\n return (...parameters) => {\n const abiEvent = abi.find((x) => x.type === 'event' && x.name === eventName);\n const { args, options } = getEventParameters(parameters, abiEvent);\n return getAction(publicClient, getContractEvents, 'getContractEvents')({\n abi,\n address,\n eventName,\n args,\n ...options,\n });\n };\n },\n });\n contract.watchEvent = new Proxy({}, {\n get(_, eventName) {\n return (...parameters) => {\n const abiEvent = abi.find((x) => x.type === 'event' && x.name === eventName);\n const { args, options } = getEventParameters(parameters, abiEvent);\n return getAction(publicClient, watchContractEvent, 'watchContractEvent')({\n abi,\n address,\n eventName,\n args,\n ...options,\n });\n };\n },\n });\n }\n }\n if (hasWalletClient) {\n if (hasWriteFunction)\n contract.write = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n return getAction(walletClient, writeContract, 'writeContract')({\n abi,\n address,\n functionName,\n args,\n ...options,\n });\n };\n },\n });\n }\n if (hasPublicClient || hasWalletClient)\n if (hasWriteFunction)\n contract.estimateGas = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n const client = (publicClient ?? walletClient);\n return getAction(client, estimateContractGas, 'estimateContractGas')({\n abi,\n address,\n functionName,\n args,\n ...options,\n account: options.account ??\n walletClient.account,\n });\n };\n },\n });\n contract.address = address;\n contract.abi = abi;\n return contract;\n}\n/**\n * @internal exporting for testing only\n */\nexport function getFunctionParameters(values) {\n const hasArgs = values.length && Array.isArray(values[0]);\n const args = hasArgs ? values[0] : [];\n const options = (hasArgs ? values[1] : values[0]) ?? {};\n return { args, options };\n}\n/**\n * @internal exporting for testing only\n */\nexport function getEventParameters(values, abiEvent) {\n let hasArgs = false;\n // If first item is array, must be `args`\n if (Array.isArray(values[0]))\n hasArgs = true;\n // Check if first item is `args` or `options`\n else if (values.length === 1) {\n // if event has indexed inputs, must have `args`\n hasArgs = abiEvent.inputs.some((x) => x.indexed);\n // If there are two items in array, must have `args`\n }\n else if (values.length === 2) {\n hasArgs = true;\n }\n const args = hasArgs ? values[0] : undefined;\n const options = (hasArgs ? values[1] : values[0]) ?? {};\n return { args, options };\n}\n//# sourceMappingURL=getContract.js.map"],"names":["getContract","abi","address","client_","client","publicClient","walletClient","hasPublicClient","hasWalletClient","contract","hasReadFunction","hasWriteFunction","hasEvent","item","_","functionName","parameters","args","options","getFunctionParameters","getAction","readContract","simulateContract","eventName","abiEvent","x","getEventParameters","createContractEventFilter","getContractEvents","watchContractEvent","writeContract","estimateContractGas","values","hasArgs"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"getContract-BL-M-dQc.cjs","sources":["../node_modules/.pnpm/viem@2.53.1_typescript@5.9.3_zod@4.1.12/node_modules/viem/_esm/actions/getContract.js"],"sourcesContent":["import { getAction } from '../utils/getAction.js';\nimport { createContractEventFilter, } from './public/createContractEventFilter.js';\nimport { estimateContractGas, } from './public/estimateContractGas.js';\nimport { getContractEvents, } from './public/getContractEvents.js';\nimport { readContract, } from './public/readContract.js';\nimport { simulateContract, } from './public/simulateContract.js';\nimport { watchContractEvent, } from './public/watchContractEvent.js';\nimport { writeContract, } from './wallet/writeContract.js';\n/**\n * Gets type-safe interface for performing contract-related actions with a specific `abi` and `address`.\n *\n * - Docs https://viem.sh/docs/contract/getContract\n *\n * Using Contract Instances can make it easier to work with contracts if you don't want to pass the `abi` and `address` properties every time you perform contract actions, e.g. [`readContract`](https://viem.sh/docs/contract/readContract), [`writeContract`](https://viem.sh/docs/contract/writeContract), [`estimateContractGas`](https://viem.sh/docs/contract/estimateContractGas), etc.\n *\n * @example\n * import { createPublicClient, getContract, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const publicClient = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const contract = getContract({\n * address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * abi: parseAbi([\n * 'function balanceOf(address owner) view returns (uint256)',\n * 'function ownerOf(uint256 tokenId) view returns (address)',\n * 'function totalSupply() view returns (uint256)',\n * ]),\n * client: publicClient,\n * })\n */\nexport function getContract({ abi, address, client: client_, }) {\n const client = client_;\n const [publicClient, walletClient] = (() => {\n if (!client)\n return [undefined, undefined];\n if ('public' in client && 'wallet' in client)\n return [client.public, client.wallet];\n if ('public' in client)\n return [client.public, undefined];\n if ('wallet' in client)\n return [undefined, client.wallet];\n return [client, client];\n })();\n const hasPublicClient = publicClient !== undefined && publicClient !== null;\n const hasWalletClient = walletClient !== undefined && walletClient !== null;\n const contract = {};\n let hasReadFunction = false;\n let hasWriteFunction = false;\n let hasEvent = false;\n for (const item of abi) {\n if (item.type === 'function')\n if (item.stateMutability === 'view' || item.stateMutability === 'pure')\n hasReadFunction = true;\n else\n hasWriteFunction = true;\n else if (item.type === 'event')\n hasEvent = true;\n // Exit early if all flags are `true`\n if (hasReadFunction && hasWriteFunction && hasEvent)\n break;\n }\n if (hasPublicClient) {\n if (hasReadFunction)\n contract.read = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n return getAction(publicClient, readContract, 'readContract')({\n abi,\n address,\n functionName,\n args,\n ...options,\n });\n };\n },\n });\n if (hasWriteFunction)\n contract.simulate = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n return getAction(publicClient, simulateContract, 'simulateContract')({\n abi,\n address,\n functionName,\n args,\n ...options,\n });\n };\n },\n });\n if (hasEvent) {\n contract.createEventFilter = new Proxy({}, {\n get(_, eventName) {\n return (...parameters) => {\n const abiEvent = abi.find((x) => x.type === 'event' && x.name === eventName);\n const { args, options } = getEventParameters(parameters, abiEvent);\n return getAction(publicClient, createContractEventFilter, 'createContractEventFilter')({\n abi,\n address,\n eventName,\n args,\n ...options,\n });\n };\n },\n });\n contract.getEvents = new Proxy({}, {\n get(_, eventName) {\n return (...parameters) => {\n const abiEvent = abi.find((x) => x.type === 'event' && x.name === eventName);\n const { args, options } = getEventParameters(parameters, abiEvent);\n return getAction(publicClient, getContractEvents, 'getContractEvents')({\n abi,\n address,\n eventName,\n args,\n ...options,\n });\n };\n },\n });\n contract.watchEvent = new Proxy({}, {\n get(_, eventName) {\n return (...parameters) => {\n const abiEvent = abi.find((x) => x.type === 'event' && x.name === eventName);\n const { args, options } = getEventParameters(parameters, abiEvent);\n return getAction(publicClient, watchContractEvent, 'watchContractEvent')({\n abi,\n address,\n eventName,\n args,\n ...options,\n });\n };\n },\n });\n }\n }\n if (hasWalletClient) {\n if (hasWriteFunction)\n contract.write = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n return getAction(walletClient, writeContract, 'writeContract')({\n abi,\n address,\n functionName,\n args,\n ...options,\n });\n };\n },\n });\n }\n if (hasPublicClient || hasWalletClient)\n if (hasWriteFunction)\n contract.estimateGas = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n const client = (publicClient ?? walletClient);\n return getAction(client, estimateContractGas, 'estimateContractGas')({\n abi,\n address,\n functionName,\n args,\n ...options,\n account: options.account ??\n walletClient.account,\n });\n };\n },\n });\n contract.address = address;\n contract.abi = abi;\n return contract;\n}\n/**\n * @internal exporting for testing only\n */\nexport function getFunctionParameters(values) {\n const hasArgs = values.length && Array.isArray(values[0]);\n const args = hasArgs ? values[0] : [];\n const options = (hasArgs ? values[1] : values[0]) ?? {};\n return { args, options };\n}\n/**\n * @internal exporting for testing only\n */\nexport function getEventParameters(values, abiEvent) {\n let hasArgs = false;\n // If first item is array, must be `args`\n if (Array.isArray(values[0]))\n hasArgs = true;\n // Check if first item is `args` or `options`\n else if (values.length === 1) {\n // if event has indexed inputs, must have `args`\n hasArgs = abiEvent.inputs.some((x) => x.indexed);\n // If there are two items in array, must have `args`\n }\n else if (values.length === 2) {\n hasArgs = true;\n }\n const args = hasArgs ? values[0] : undefined;\n const options = (hasArgs ? values[1] : values[0]) ?? {};\n return { args, options };\n}\n//# sourceMappingURL=getContract.js.map"],"names":["getContract","abi","address","client_","client","publicClient","walletClient","hasPublicClient","hasWalletClient","contract","hasReadFunction","hasWriteFunction","hasEvent","item","_","functionName","parameters","args","options","getFunctionParameters","getAction","readContract","simulateContract","eventName","abiEvent","x","getEventParameters","createContractEventFilter","getContractEvents","watchContractEvent","writeContract","estimateContractGas","values","hasArgs"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { g as p, r as v, s as A, c as _, a as x, w as F,
|
|
1
|
+
import { g as p, r as v, s as A, c as _, a as x, w as F, b, e as G } from "./writeContract-D9xqoPDa.js";
|
|
2
2
|
function W({ abi: t, address: i, client: l }) {
|
|
3
|
-
const e = l, [a, g] = e ? "public" in e && "wallet" in e ? [e.public, e.wallet] : "public" in e ? [e.public, void 0] : "wallet" in e ? [void 0, e.wallet] : [e, e] : [void 0, void 0],
|
|
3
|
+
const e = l, [a, g] = e ? "public" in e && "wallet" in e ? [e.public, e.wallet] : "public" in e ? [e.public, void 0] : "wallet" in e ? [void 0, e.wallet] : [e, e] : [void 0, void 0], d = a != null, P = g != null, u = {};
|
|
4
4
|
let E = !1, C = !1, h = !1;
|
|
5
5
|
for (const s of t)
|
|
6
6
|
if (s.type === "function" ? s.stateMutability === "view" || s.stateMutability === "pure" ? E = !0 : C = !0 : s.type === "event" && (h = !0), E && C && h)
|
|
7
7
|
break;
|
|
8
|
-
return
|
|
8
|
+
return d && (E && (u.read = new Proxy({}, {
|
|
9
9
|
get(s, n) {
|
|
10
10
|
return (...o) => {
|
|
11
11
|
const { args: c, options: r } = y(o);
|
|
@@ -34,7 +34,7 @@ function W({ abi: t, address: i, client: l }) {
|
|
|
34
34
|
})), h && (u.createEventFilter = new Proxy({}, {
|
|
35
35
|
get(s, n) {
|
|
36
36
|
return (...o) => {
|
|
37
|
-
const c = t.find((f) => f.type === "event" && f.name === n), { args: r, options: w } =
|
|
37
|
+
const c = t.find((f) => f.type === "event" && f.name === n), { args: r, options: w } = m(o, c);
|
|
38
38
|
return p(a, _, "createContractEventFilter")({
|
|
39
39
|
abi: t,
|
|
40
40
|
address: i,
|
|
@@ -47,7 +47,7 @@ function W({ abi: t, address: i, client: l }) {
|
|
|
47
47
|
}), u.getEvents = new Proxy({}, {
|
|
48
48
|
get(s, n) {
|
|
49
49
|
return (...o) => {
|
|
50
|
-
const c = t.find((f) => f.type === "event" && f.name === n), { args: r, options: w } =
|
|
50
|
+
const c = t.find((f) => f.type === "event" && f.name === n), { args: r, options: w } = m(o, c);
|
|
51
51
|
return p(a, x, "getContractEvents")({
|
|
52
52
|
abi: t,
|
|
53
53
|
address: i,
|
|
@@ -60,7 +60,7 @@ function W({ abi: t, address: i, client: l }) {
|
|
|
60
60
|
}), u.watchEvent = new Proxy({}, {
|
|
61
61
|
get(s, n) {
|
|
62
62
|
return (...o) => {
|
|
63
|
-
const c = t.find((f) => f.type === "event" && f.name === n), { args: r, options: w } =
|
|
63
|
+
const c = t.find((f) => f.type === "event" && f.name === n), { args: r, options: w } = m(o, c);
|
|
64
64
|
return p(a, F, "watchContractEvent")({
|
|
65
65
|
abi: t,
|
|
66
66
|
address: i,
|
|
@@ -74,7 +74,7 @@ function W({ abi: t, address: i, client: l }) {
|
|
|
74
74
|
get(s, n) {
|
|
75
75
|
return (...o) => {
|
|
76
76
|
const { args: c, options: r } = y(o);
|
|
77
|
-
return p(g,
|
|
77
|
+
return p(g, b, "writeContract")({
|
|
78
78
|
abi: t,
|
|
79
79
|
address: i,
|
|
80
80
|
functionName: n,
|
|
@@ -83,11 +83,11 @@ function W({ abi: t, address: i, client: l }) {
|
|
|
83
83
|
});
|
|
84
84
|
};
|
|
85
85
|
}
|
|
86
|
-
})), (
|
|
86
|
+
})), (d || P) && C && (u.estimateGas = new Proxy({}, {
|
|
87
87
|
get(s, n) {
|
|
88
88
|
return (...o) => {
|
|
89
89
|
const { args: c, options: r } = y(o);
|
|
90
|
-
return p(a ?? g,
|
|
90
|
+
return p(a ?? g, G, "estimateContractGas")({
|
|
91
91
|
abi: t,
|
|
92
92
|
address: i,
|
|
93
93
|
functionName: n,
|
|
@@ -103,7 +103,7 @@ function y(t) {
|
|
|
103
103
|
const i = t.length && Array.isArray(t[0]), l = i ? t[0] : [], e = (i ? t[1] : t[0]) ?? {};
|
|
104
104
|
return { args: l, options: e };
|
|
105
105
|
}
|
|
106
|
-
function
|
|
106
|
+
function m(t, i) {
|
|
107
107
|
let l = !1;
|
|
108
108
|
Array.isArray(t[0]) ? l = !0 : t.length === 1 ? l = i.inputs.some((g) => g.indexed) : t.length === 2 && (l = !0);
|
|
109
109
|
const e = l ? t[0] : void 0, a = (l ? t[1] : t[0]) ?? {};
|
|
@@ -112,4 +112,4 @@ function d(t, i) {
|
|
|
112
112
|
export {
|
|
113
113
|
W as g
|
|
114
114
|
};
|
|
115
|
-
//# sourceMappingURL=getContract-
|
|
115
|
+
//# sourceMappingURL=getContract-BVdsHXdp.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getContract-Dxh0At3n.js","sources":["../node_modules/.pnpm/viem@2.45.0_typescript@5.9.3_zod@4.1.12/node_modules/viem/_esm/actions/getContract.js"],"sourcesContent":["import { getAction } from '../utils/getAction.js';\nimport { createContractEventFilter, } from './public/createContractEventFilter.js';\nimport { estimateContractGas, } from './public/estimateContractGas.js';\nimport { getContractEvents, } from './public/getContractEvents.js';\nimport { readContract, } from './public/readContract.js';\nimport { simulateContract, } from './public/simulateContract.js';\nimport { watchContractEvent, } from './public/watchContractEvent.js';\nimport { writeContract, } from './wallet/writeContract.js';\n/**\n * Gets type-safe interface for performing contract-related actions with a specific `abi` and `address`.\n *\n * - Docs https://viem.sh/docs/contract/getContract\n *\n * Using Contract Instances can make it easier to work with contracts if you don't want to pass the `abi` and `address` properties every time you perform contract actions, e.g. [`readContract`](https://viem.sh/docs/contract/readContract), [`writeContract`](https://viem.sh/docs/contract/writeContract), [`estimateContractGas`](https://viem.sh/docs/contract/estimateContractGas), etc.\n *\n * @example\n * import { createPublicClient, getContract, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const publicClient = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const contract = getContract({\n * address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * abi: parseAbi([\n * 'function balanceOf(address owner) view returns (uint256)',\n * 'function ownerOf(uint256 tokenId) view returns (address)',\n * 'function totalSupply() view returns (uint256)',\n * ]),\n * client: publicClient,\n * })\n */\nexport function getContract({ abi, address, client: client_, }) {\n const client = client_;\n const [publicClient, walletClient] = (() => {\n if (!client)\n return [undefined, undefined];\n if ('public' in client && 'wallet' in client)\n return [client.public, client.wallet];\n if ('public' in client)\n return [client.public, undefined];\n if ('wallet' in client)\n return [undefined, client.wallet];\n return [client, client];\n })();\n const hasPublicClient = publicClient !== undefined && publicClient !== null;\n const hasWalletClient = walletClient !== undefined && walletClient !== null;\n const contract = {};\n let hasReadFunction = false;\n let hasWriteFunction = false;\n let hasEvent = false;\n for (const item of abi) {\n if (item.type === 'function')\n if (item.stateMutability === 'view' || item.stateMutability === 'pure')\n hasReadFunction = true;\n else\n hasWriteFunction = true;\n else if (item.type === 'event')\n hasEvent = true;\n // Exit early if all flags are `true`\n if (hasReadFunction && hasWriteFunction && hasEvent)\n break;\n }\n if (hasPublicClient) {\n if (hasReadFunction)\n contract.read = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n return getAction(publicClient, readContract, 'readContract')({\n abi,\n address,\n functionName,\n args,\n ...options,\n });\n };\n },\n });\n if (hasWriteFunction)\n contract.simulate = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n return getAction(publicClient, simulateContract, 'simulateContract')({\n abi,\n address,\n functionName,\n args,\n ...options,\n });\n };\n },\n });\n if (hasEvent) {\n contract.createEventFilter = new Proxy({}, {\n get(_, eventName) {\n return (...parameters) => {\n const abiEvent = abi.find((x) => x.type === 'event' && x.name === eventName);\n const { args, options } = getEventParameters(parameters, abiEvent);\n return getAction(publicClient, createContractEventFilter, 'createContractEventFilter')({\n abi,\n address,\n eventName,\n args,\n ...options,\n });\n };\n },\n });\n contract.getEvents = new Proxy({}, {\n get(_, eventName) {\n return (...parameters) => {\n const abiEvent = abi.find((x) => x.type === 'event' && x.name === eventName);\n const { args, options } = getEventParameters(parameters, abiEvent);\n return getAction(publicClient, getContractEvents, 'getContractEvents')({\n abi,\n address,\n eventName,\n args,\n ...options,\n });\n };\n },\n });\n contract.watchEvent = new Proxy({}, {\n get(_, eventName) {\n return (...parameters) => {\n const abiEvent = abi.find((x) => x.type === 'event' && x.name === eventName);\n const { args, options } = getEventParameters(parameters, abiEvent);\n return getAction(publicClient, watchContractEvent, 'watchContractEvent')({\n abi,\n address,\n eventName,\n args,\n ...options,\n });\n };\n },\n });\n }\n }\n if (hasWalletClient) {\n if (hasWriteFunction)\n contract.write = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n return getAction(walletClient, writeContract, 'writeContract')({\n abi,\n address,\n functionName,\n args,\n ...options,\n });\n };\n },\n });\n }\n if (hasPublicClient || hasWalletClient)\n if (hasWriteFunction)\n contract.estimateGas = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n const client = (publicClient ?? walletClient);\n return getAction(client, estimateContractGas, 'estimateContractGas')({\n abi,\n address,\n functionName,\n args,\n ...options,\n account: options.account ??\n walletClient.account,\n });\n };\n },\n });\n contract.address = address;\n contract.abi = abi;\n return contract;\n}\n/**\n * @internal exporting for testing only\n */\nexport function getFunctionParameters(values) {\n const hasArgs = values.length && Array.isArray(values[0]);\n const args = hasArgs ? values[0] : [];\n const options = (hasArgs ? values[1] : values[0]) ?? {};\n return { args, options };\n}\n/**\n * @internal exporting for testing only\n */\nexport function getEventParameters(values, abiEvent) {\n let hasArgs = false;\n // If first item is array, must be `args`\n if (Array.isArray(values[0]))\n hasArgs = true;\n // Check if first item is `args` or `options`\n else if (values.length === 1) {\n // if event has indexed inputs, must have `args`\n hasArgs = abiEvent.inputs.some((x) => x.indexed);\n // If there are two items in array, must have `args`\n }\n else if (values.length === 2) {\n hasArgs = true;\n }\n const args = hasArgs ? values[0] : undefined;\n const options = (hasArgs ? values[1] : values[0]) ?? {};\n return { args, options };\n}\n//# sourceMappingURL=getContract.js.map"],"names":["getContract","abi","address","client_","client","publicClient","walletClient","hasPublicClient","hasWalletClient","contract","hasReadFunction","hasWriteFunction","hasEvent","item","_","functionName","parameters","args","options","getFunctionParameters","getAction","readContract","simulateContract","eventName","abiEvent","x","getEventParameters","createContractEventFilter","getContractEvents","watchContractEvent","writeContract","estimateContractGas","values","hasArgs"],"mappings":";AAiCO,SAASA,EAAY,EAAE,KAAAC,GAAK,SAAAC,GAAS,QAAQC,EAAO,GAAK;AAC5D,QAAMC,IAASD,GACT,CAACE,GAAcC,CAAY,IACxBF,IAED,YAAYA,KAAU,YAAYA,IAC3B,CAACA,EAAO,QAAQA,EAAO,MAAM,IACpC,YAAYA,IACL,CAACA,EAAO,QAAQ,MAAS,IAChC,YAAYA,IACL,CAAC,QAAWA,EAAO,MAAM,IAC7B,CAACA,GAAQA,CAAM,IAPX,CAAC,QAAW,MAAS,GAS9BG,IAAgDF,KAAiB,MACjEG,IAAgDF,KAAiB,MACjEG,IAAW,CAAA;AACjB,MAAIC,IAAkB,IAClBC,IAAmB,IACnBC,IAAW;AACf,aAAWC,KAAQZ;AASf,QARIY,EAAK,SAAS,aACVA,EAAK,oBAAoB,UAAUA,EAAK,oBAAoB,SAC5DH,IAAkB,KAElBC,IAAmB,KAClBE,EAAK,SAAS,YACnBD,IAAW,KAEXF,KAAmBC,KAAoBC;AACvC;AAER,SAAIL,MACIG,MACAD,EAAS,OAAO,IAAI,MAAM,IAAI;AAAA,IAC1B,IAAIK,GAAGC,GAAc;AACjB,aAAO,IAAIC,MAAe;AACtB,cAAM,EAAE,MAAAC,GAAM,SAAAC,MAAYC,EAAsBH,CAAU;AAC1D,eAAOI,EAAUf,GAAcgB,GAAc,cAAc,EAAE;AAAA,UACzD,KAAApB;AAAA,UACA,SAAAC;AAAA,UACA,cAAAa;AAAA,UACA,MAAAE;AAAA,UACA,GAAGC;AAAA,QAC/B,CAAyB;AAAA,MACL;AAAA,IACJ;AAAA,EAChB,CAAa,IACDP,MACAF,EAAS,WAAW,IAAI,MAAM,IAAI;AAAA,IAC9B,IAAIK,GAAGC,GAAc;AACjB,aAAO,IAAIC,MAAe;AACtB,cAAM,EAAE,MAAAC,GAAM,SAAAC,MAAYC,EAAsBH,CAAU;AAC1D,eAAOI,EAAUf,GAAciB,GAAkB,kBAAkB,EAAE;AAAA,UACjE,KAAArB;AAAA,UACA,SAAAC;AAAA,UACA,cAAAa;AAAA,UACA,MAAAE;AAAA,UACA,GAAGC;AAAA,QAC/B,CAAyB;AAAA,MACL;AAAA,IACJ;AAAA,EAChB,CAAa,IACDN,MACAH,EAAS,oBAAoB,IAAI,MAAM,IAAI;AAAA,IACvC,IAAIK,GAAGS,GAAW;AACd,aAAO,IAAIP,MAAe;AACtB,cAAMQ,IAAWvB,EAAI,KAAK,CAACwB,MAAMA,EAAE,SAAS,WAAWA,EAAE,SAASF,CAAS,GACrE,EAAE,MAAAN,GAAM,SAAAC,EAAO,IAAKQ,EAAmBV,GAAYQ,CAAQ;AACjE,eAAOJ,EAAUf,GAAcsB,GAA2B,2BAA2B,EAAE;AAAA,UACnF,KAAA1B;AAAA,UACA,SAAAC;AAAA,UACA,WAAAqB;AAAA,UACA,MAAAN;AAAA,UACA,GAAGC;AAAA,QAC/B,CAAyB;AAAA,MACL;AAAA,IACJ;AAAA,EAChB,CAAa,GACDT,EAAS,YAAY,IAAI,MAAM,IAAI;AAAA,IAC/B,IAAIK,GAAGS,GAAW;AACd,aAAO,IAAIP,MAAe;AACtB,cAAMQ,IAAWvB,EAAI,KAAK,CAACwB,MAAMA,EAAE,SAAS,WAAWA,EAAE,SAASF,CAAS,GACrE,EAAE,MAAAN,GAAM,SAAAC,EAAO,IAAKQ,EAAmBV,GAAYQ,CAAQ;AACjE,eAAOJ,EAAUf,GAAcuB,GAAmB,mBAAmB,EAAE;AAAA,UACnE,KAAA3B;AAAA,UACA,SAAAC;AAAA,UACA,WAAAqB;AAAA,UACA,MAAAN;AAAA,UACA,GAAGC;AAAA,QAC/B,CAAyB;AAAA,MACL;AAAA,IACJ;AAAA,EAChB,CAAa,GACDT,EAAS,aAAa,IAAI,MAAM,IAAI;AAAA,IAChC,IAAIK,GAAGS,GAAW;AACd,aAAO,IAAIP,MAAe;AACtB,cAAMQ,IAAWvB,EAAI,KAAK,CAACwB,MAAMA,EAAE,SAAS,WAAWA,EAAE,SAASF,CAAS,GACrE,EAAE,MAAAN,GAAM,SAAAC,EAAO,IAAKQ,EAAmBV,GAAYQ,CAAQ;AACjE,eAAOJ,EAAUf,GAAcwB,GAAoB,oBAAoB,EAAE;AAAA,UACrE,KAAA5B;AAAA,UACA,SAAAC;AAAA,UACA,WAAAqB;AAAA,UACA,MAAAN;AAAA,UACA,GAAGC;AAAA,QAC/B,CAAyB;AAAA,MACL;AAAA,IACJ;AAAA,EAChB,CAAa,KAGLV,KACIG,MACAF,EAAS,QAAQ,IAAI,MAAM,IAAI;AAAA,IAC3B,IAAIK,GAAGC,GAAc;AACjB,aAAO,IAAIC,MAAe;AACtB,cAAM,EAAE,MAAAC,GAAM,SAAAC,MAAYC,EAAsBH,CAAU;AAC1D,eAAOI,EAAUd,GAAcwB,GAAe,eAAe,EAAE;AAAA,UAC3D,KAAA7B;AAAA,UACA,SAAAC;AAAA,UACA,cAAAa;AAAA,UACA,MAAAE;AAAA,UACA,GAAGC;AAAA,QAC/B,CAAyB;AAAA,MACL;AAAA,IACJ;AAAA,EAChB,CAAa,KAELX,KAAmBC,MACfG,MACAF,EAAS,cAAc,IAAI,MAAM,IAAI;AAAA,IACjC,IAAIK,GAAGC,GAAc;AACjB,aAAO,IAAIC,MAAe;AACtB,cAAM,EAAE,MAAAC,GAAM,SAAAC,MAAYC,EAAsBH,CAAU;AAE1D,eAAOI,EADSf,KAAgBC,GACPyB,GAAqB,qBAAqB,EAAE;AAAA,UACjE,KAAA9B;AAAA,UACA,SAAAC;AAAA,UACA,cAAAa;AAAA,UACA,MAAAE;AAAA,UACA,GAAGC;AAAA,UACH,SAASA,EAAQ,WACbZ,EAAa;AAAA,QAC7C,CAAyB;AAAA,MACL;AAAA,IACJ;AAAA,EAChB,CAAa,IACTG,EAAS,UAAUP,GACnBO,EAAS,MAAMR,GACRQ;AACX;AAIO,SAASU,EAAsBa,GAAQ;AAC1C,QAAMC,IAAUD,EAAO,UAAU,MAAM,QAAQA,EAAO,CAAC,CAAC,GAClDf,IAAOgB,IAAUD,EAAO,CAAC,IAAI,CAAA,GAC7Bd,KAAWe,IAAUD,EAAO,CAAC,IAAIA,EAAO,CAAC,MAAM,CAAA;AACrD,SAAO,EAAE,MAAAf,GAAM,SAAAC,EAAO;AAC1B;AAIO,SAASQ,EAAmBM,GAAQR,GAAU;AACjD,MAAIS,IAAU;AAEd,EAAI,MAAM,QAAQD,EAAO,CAAC,CAAC,IACvBC,IAAU,KAELD,EAAO,WAAW,IAEvBC,IAAUT,EAAS,OAAO,KAAK,CAACC,MAAMA,EAAE,OAAO,IAG1CO,EAAO,WAAW,MACvBC,IAAU;AAEd,QAAMhB,IAAOgB,IAAUD,EAAO,CAAC,IAAI,QAC7Bd,KAAWe,IAAUD,EAAO,CAAC,IAAIA,EAAO,CAAC,MAAM,CAAA;AACrD,SAAO,EAAE,MAAAf,GAAM,SAAAC,EAAO;AAC1B;","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"getContract-BVdsHXdp.js","sources":["../node_modules/.pnpm/viem@2.53.1_typescript@5.9.3_zod@4.1.12/node_modules/viem/_esm/actions/getContract.js"],"sourcesContent":["import { getAction } from '../utils/getAction.js';\nimport { createContractEventFilter, } from './public/createContractEventFilter.js';\nimport { estimateContractGas, } from './public/estimateContractGas.js';\nimport { getContractEvents, } from './public/getContractEvents.js';\nimport { readContract, } from './public/readContract.js';\nimport { simulateContract, } from './public/simulateContract.js';\nimport { watchContractEvent, } from './public/watchContractEvent.js';\nimport { writeContract, } from './wallet/writeContract.js';\n/**\n * Gets type-safe interface for performing contract-related actions with a specific `abi` and `address`.\n *\n * - Docs https://viem.sh/docs/contract/getContract\n *\n * Using Contract Instances can make it easier to work with contracts if you don't want to pass the `abi` and `address` properties every time you perform contract actions, e.g. [`readContract`](https://viem.sh/docs/contract/readContract), [`writeContract`](https://viem.sh/docs/contract/writeContract), [`estimateContractGas`](https://viem.sh/docs/contract/estimateContractGas), etc.\n *\n * @example\n * import { createPublicClient, getContract, http, parseAbi } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const publicClient = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n * const contract = getContract({\n * address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',\n * abi: parseAbi([\n * 'function balanceOf(address owner) view returns (uint256)',\n * 'function ownerOf(uint256 tokenId) view returns (address)',\n * 'function totalSupply() view returns (uint256)',\n * ]),\n * client: publicClient,\n * })\n */\nexport function getContract({ abi, address, client: client_, }) {\n const client = client_;\n const [publicClient, walletClient] = (() => {\n if (!client)\n return [undefined, undefined];\n if ('public' in client && 'wallet' in client)\n return [client.public, client.wallet];\n if ('public' in client)\n return [client.public, undefined];\n if ('wallet' in client)\n return [undefined, client.wallet];\n return [client, client];\n })();\n const hasPublicClient = publicClient !== undefined && publicClient !== null;\n const hasWalletClient = walletClient !== undefined && walletClient !== null;\n const contract = {};\n let hasReadFunction = false;\n let hasWriteFunction = false;\n let hasEvent = false;\n for (const item of abi) {\n if (item.type === 'function')\n if (item.stateMutability === 'view' || item.stateMutability === 'pure')\n hasReadFunction = true;\n else\n hasWriteFunction = true;\n else if (item.type === 'event')\n hasEvent = true;\n // Exit early if all flags are `true`\n if (hasReadFunction && hasWriteFunction && hasEvent)\n break;\n }\n if (hasPublicClient) {\n if (hasReadFunction)\n contract.read = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n return getAction(publicClient, readContract, 'readContract')({\n abi,\n address,\n functionName,\n args,\n ...options,\n });\n };\n },\n });\n if (hasWriteFunction)\n contract.simulate = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n return getAction(publicClient, simulateContract, 'simulateContract')({\n abi,\n address,\n functionName,\n args,\n ...options,\n });\n };\n },\n });\n if (hasEvent) {\n contract.createEventFilter = new Proxy({}, {\n get(_, eventName) {\n return (...parameters) => {\n const abiEvent = abi.find((x) => x.type === 'event' && x.name === eventName);\n const { args, options } = getEventParameters(parameters, abiEvent);\n return getAction(publicClient, createContractEventFilter, 'createContractEventFilter')({\n abi,\n address,\n eventName,\n args,\n ...options,\n });\n };\n },\n });\n contract.getEvents = new Proxy({}, {\n get(_, eventName) {\n return (...parameters) => {\n const abiEvent = abi.find((x) => x.type === 'event' && x.name === eventName);\n const { args, options } = getEventParameters(parameters, abiEvent);\n return getAction(publicClient, getContractEvents, 'getContractEvents')({\n abi,\n address,\n eventName,\n args,\n ...options,\n });\n };\n },\n });\n contract.watchEvent = new Proxy({}, {\n get(_, eventName) {\n return (...parameters) => {\n const abiEvent = abi.find((x) => x.type === 'event' && x.name === eventName);\n const { args, options } = getEventParameters(parameters, abiEvent);\n return getAction(publicClient, watchContractEvent, 'watchContractEvent')({\n abi,\n address,\n eventName,\n args,\n ...options,\n });\n };\n },\n });\n }\n }\n if (hasWalletClient) {\n if (hasWriteFunction)\n contract.write = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n return getAction(walletClient, writeContract, 'writeContract')({\n abi,\n address,\n functionName,\n args,\n ...options,\n });\n };\n },\n });\n }\n if (hasPublicClient || hasWalletClient)\n if (hasWriteFunction)\n contract.estimateGas = new Proxy({}, {\n get(_, functionName) {\n return (...parameters) => {\n const { args, options } = getFunctionParameters(parameters);\n const client = (publicClient ?? walletClient);\n return getAction(client, estimateContractGas, 'estimateContractGas')({\n abi,\n address,\n functionName,\n args,\n ...options,\n account: options.account ??\n walletClient.account,\n });\n };\n },\n });\n contract.address = address;\n contract.abi = abi;\n return contract;\n}\n/**\n * @internal exporting for testing only\n */\nexport function getFunctionParameters(values) {\n const hasArgs = values.length && Array.isArray(values[0]);\n const args = hasArgs ? values[0] : [];\n const options = (hasArgs ? values[1] : values[0]) ?? {};\n return { args, options };\n}\n/**\n * @internal exporting for testing only\n */\nexport function getEventParameters(values, abiEvent) {\n let hasArgs = false;\n // If first item is array, must be `args`\n if (Array.isArray(values[0]))\n hasArgs = true;\n // Check if first item is `args` or `options`\n else if (values.length === 1) {\n // if event has indexed inputs, must have `args`\n hasArgs = abiEvent.inputs.some((x) => x.indexed);\n // If there are two items in array, must have `args`\n }\n else if (values.length === 2) {\n hasArgs = true;\n }\n const args = hasArgs ? values[0] : undefined;\n const options = (hasArgs ? values[1] : values[0]) ?? {};\n return { args, options };\n}\n//# sourceMappingURL=getContract.js.map"],"names":["getContract","abi","address","client_","client","publicClient","walletClient","hasPublicClient","hasWalletClient","contract","hasReadFunction","hasWriteFunction","hasEvent","item","_","functionName","parameters","args","options","getFunctionParameters","getAction","readContract","simulateContract","eventName","abiEvent","x","getEventParameters","createContractEventFilter","getContractEvents","watchContractEvent","writeContract","estimateContractGas","values","hasArgs"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";const s=require("./writeContract-Gli_t0c1.cjs"),c=require("./constants-PXB3A4Yl.cjs"),be=require("./localBatchGatewayRequest-Bz0YuhIJ.cjs"),$t=require("./secp256k1-cRXUqGNw.cjs");function ze(e){let t;if(typeof e=="string")t=s.parseSignature(e);else{const r=s.parseStructs(e),n=e.length;for(let o=0;o<n;o++){const a=e[o];if(!s.isStructSignature(a)){t=s.parseSignature(a,r);break}}}if(!t)throw new s.InvalidAbiItemError({signature:e});return t}function Fe(e){const t=[];if(typeof e=="string"){const r=s.splitParameters(e),n=r.length;for(let o=0;o<n;o++)t.push(s.parseAbiParameter(r[o],{modifiers:s.modifiers}))}else{const r=s.parseStructs(e),n=e.length;for(let o=0;o<n;o++){const a=e[o];if(s.isStructSignature(a))continue;const i=s.splitParameters(a),u=i.length;for(let d=0;d<u;d++)t.push(s.parseAbiParameter(i[d],{modifiers:s.modifiers,structs:r}))}}if(t.length===0)throw new s.InvalidAbiParametersError({params:e});return t}function J(e,t){if(j(e)>t)throw new Jt({givenSize:j(e),maxSize:t})}const U={zero:48,nine:57,A:65,F:70,a:97,f:102};function $e(e){if(e>=U.zero&&e<=U.nine)return e-U.zero;if(e>=U.A&&e<=U.F)return e-(U.A-10);if(e>=U.a&&e<=U.f)return e-(U.a-10)}function _t(e,t={}){const{dir:r,size:n=32}=t;if(n===0)return e;if(e.length>n)throw new Yt({size:e.length,targetSize:n,type:"Bytes"});const o=new Uint8Array(n);for(let a=0;a<n;a++){const i=r==="right";o[i?a:n-a-1]=e[i?a:e.length-a-1]}return o}function je(e,t={}){const{dir:r="left"}=t;let n=e,o=0;for(let a=0;a<n.length-1&&n[r==="left"?a:n.length-a-1].toString()==="0";a++)o++;return n=r==="left"?n.slice(o):n.slice(0,n.length-o),n}const qt=new TextDecoder,Ut=new TextEncoder;function Dt(e){return e instanceof Uint8Array?e:typeof e=="string"?We(e):Ot(e)}function Ot(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function We(e,t={}){const{size:r}=t;let n=e;r&&(s.assertSize(e,r),n=s.padRight(e,r));let o=n.slice(2);o.length%2&&(o=`0${o}`);const a=o.length/2,i=new Uint8Array(a);for(let u=0,d=0;u<a;u++){const l=$e(o.charCodeAt(d++)),f=$e(o.charCodeAt(d++));if(l===void 0||f===void 0)throw new s.BaseError(`Invalid byte sequence ("${o[d-2]}${o[d-1]}" in "${o}").`);i[u]=l<<4|f}return i}function Lt(e,t={}){const{size:r}=t,n=Ut.encode(e);return typeof r=="number"?(J(n,r),Mt(n,r)):n}function Mt(e,t){return _t(e,{dir:"right",size:t})}function j(e){return e.length}function Ht(e,t,r,n={}){const{strict:o}=n;return e.slice(t,r)}function jt(e,t={}){const{size:r}=t;typeof r<"u"&&J(e,r);const n=s.fromBytes(e,t);return s.toBigInt(n,t)}function Wt(e,t={}){const{size:r}=t;let n=e;if(typeof r<"u"&&(J(n,r),n=Ve(n)),n.length>1||n[0]>1)throw new Zt(n);return!!n[0]}function D(e,t={}){const{size:r}=t;typeof r<"u"&&J(e,r);const n=s.fromBytes(e,t);return s.toNumber(n,t)}function Vt(e,t={}){const{size:r}=t;let n=e;return typeof r<"u"&&(J(n,r),n=Gt(n)),qt.decode(n)}function Ve(e){return je(e,{dir:"left"})}function Gt(e){return je(e,{dir:"right"})}class Zt extends s.BaseError{constructor(t){super(`Bytes value \`${t}\` is not a valid boolean.`,{metaMessages:["The bytes array must contain a single byte of either a `0` or `1` value."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.InvalidBytesBooleanError"})}}class Jt extends s.BaseError{constructor({givenSize:t,maxSize:r}){super(`Size cannot exceed \`${r}\` bytes. Given size: \`${t}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}}class Yt extends s.BaseError{constructor({size:t,targetSize:r,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\`${t}\`) exceeds padding size (\`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}}class Kt extends c.BaseError{constructor(t){super(`Call bundle failed with status: ${t.statusCode}`,{name:"BundleFailedError"}),Object.defineProperty(this,"result",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=t}}function te(e,{delay:t=100,retryCount:r=2,shouldRetry:n=()=>!0,signal:o}={}){return new Promise((a,i)=>{const u=async({count:d=0}={})=>{if(o?.aborted){i(c.getAbortError(o));return}const l=async({error:f})=>{const p=typeof t=="function"?t({count:d,error:f}):t;if(p)try{await s.wait(p,{signal:o})}catch(m){i(m);return}u({count:d+1})};try{const f=await e();a(f)}catch(f){if(o?.aborted){i(c.getAbortError(o));return}if(c.isAbortError(f)){i(f);return}if(d<r&&await n({count:d,error:f}))return l({error:f});i(f)}};u()})}const Ge="0x5792579257925792579257925792579257925792579257925792579257925792",Ze=c.numberToHex(0,{size:32});async function Je(e,t){const{account:r=e.account,chain:n=e.chain,experimental_fallback:o,experimental_fallbackDelay:a=32,forceAtomic:i=!1,id:u,version:d="2.0.0"}=t,l=r?c.parseAccount(r):null;let f=t.capabilities;e.dataSuffix&&!t.capabilities?.dataSuffix&&(typeof e.dataSuffix=="string"?f={...t.capabilities,dataSuffix:{value:e.dataSuffix,optional:!0}}:f={...t.capabilities,dataSuffix:{value:e.dataSuffix.value,...e.dataSuffix.required?{}:{optional:!0}}});const p=t.calls.map(m=>{const h=m,g=h.abi?s.encodeFunctionData({abi:h.abi,functionName:h.functionName,args:h.args}):h.data;return{data:h.dataSuffix&&g?c.concat([g,h.dataSuffix]):g,to:h.to,value:h.value?c.numberToHex(h.value):void 0}});try{const m=await e.request({method:"wallet_sendCalls",params:[{atomicRequired:i,calls:p,capabilities:f,chainId:c.numberToHex(n.id),from:l?.address,id:u,version:d}]},{retryCount:0});return typeof m=="string"?{id:m}:m}catch(m){const h=m;if(o&&(h.name==="MethodNotFoundRpcError"||h.name==="MethodNotSupportedRpcError"||h.name==="UnknownRpcError"||h.details.toLowerCase().includes("does not exist / is not available")||h.details.toLowerCase().includes("missing or invalid. request()")||h.details.toLowerCase().includes("did not match any variant of untagged enum")||h.details.toLowerCase().includes("account upgraded to unsupported contract")||h.details.toLowerCase().includes("eip-7702 not supported")||h.details.toLowerCase().includes("unsupported wc_ method")||h.details.toLowerCase().includes("feature toggled misconfigured")||h.details.toLowerCase().includes("jsonrpcengine: response has no error or result for request"))){if(f&&Object.values(f).some(w=>!w.optional)){const w="non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.";throw new s.UnsupportedNonOptionalCapabilityError(new c.BaseError(w,{details:w}))}if(i&&p.length>1){const y="`forceAtomic` is not supported on fallback to `eth_sendTransaction`.";throw new s.AtomicityNotSupportedError(new c.BaseError(y,{details:y}))}const g=[];for(const y of p){try{const w=await s.sendTransaction(e,{account:l,chain:n,data:y.data,to:y.to,value:y.value?c.hexToBigInt(y.value):void 0});g.push({status:"fulfilled",value:w})}catch(w){g.push({reason:w,status:"rejected"})}a>0&&await new Promise(w=>setTimeout(w,a))}if(g.every(y=>y.status==="rejected"))throw g[0].reason;const b=g.map(y=>y.status==="fulfilled"?y.value:Ze);return{id:c.concat([...b,c.numberToHex(n.id,{size:32}),Ge])}}throw s.getTransactionError(m,{...t,account:l,chain:t.chain})}}async function Ye(e,t){async function r(f){if(f.endsWith(Ge.slice(2))){const m=c.trim(c.sliceHex(f,-64,-32)),h=c.sliceHex(f,0,-64).slice(2).match(/.{1,64}/g),g=await Promise.all(h.map(y=>Ze.slice(2)!==y?e.request({method:"eth_getTransactionReceipt",params:[`0x${y}`]},{dedupe:!0}):void 0)),b=g.some(y=>y===null)?100:g.every(y=>y?.status==="0x1")?200:g.every(y=>y?.status==="0x0")?500:600;return{atomic:!1,chainId:c.hexToNumber(m),receipts:g.filter(Boolean),status:b,version:"2.0.0"}}return e.request({method:"wallet_getCallsStatus",params:[f]})}const{atomic:n=!1,chainId:o,receipts:a,version:i="2.0.0",...u}=await r(t.id),[d,l]=(()=>{const f=u.status;return f>=100&&f<200?["pending",f]:f>=200&&f<300?["success",f]:f>=300&&f<700?["failure",f]:f==="CONFIRMED"?["success",200]:f==="PENDING"?["pending",100]:[void 0,f]})();return{...u,atomic:n,chainId:o?c.hexToNumber(o):void 0,receipts:a?.map(f=>({...f,blockNumber:c.hexToBigInt(f.blockNumber),gasUsed:c.hexToBigInt(f.gasUsed),status:c.receiptStatuses[f.status]}))??[],statusCode:l,status:d,version:i}}async function Ke(e,t){const{id:r,pollingInterval:n=e.pollingInterval,status:o=({statusCode:b})=>b===200||b>=300,retryCount:a=4,retryDelay:i=({count:b})=>~~(1<<b)*200,timeout:u=6e4,throwOnFailure:d=!1}=t,l=c.stringify(["waitForCallsStatus",e.uid,r]),{promise:f,resolve:p,reject:m}=s.withResolvers();let h;const g=s.observe(l,{resolve:p,reject:m},b=>{const y=s.poll(async()=>{const w=E=>{clearTimeout(h),y(),E(),g()};try{const E=await te(async()=>{const v=await s.getAction(e,Ye,"getCallsStatus")({id:r});if(d&&v.status==="failure")throw new Kt(v);return v},{retryCount:a,delay:i});if(!o(E))return;w(()=>b.resolve(E))}catch(E){w(()=>b.reject(E))}},{interval:n,emitOnBegin:!0});return y});return h=u?setTimeout(()=>{g(),clearTimeout(h),m(new Qt({id:r}))},u):void 0,await f}class Qt extends c.BaseError{constructor({id:t}){super(`Timed out while waiting for call bundle with id "${t}" to be confirmed.`,{name:"WaitForCallsStatusTimeoutError"})}}const de=256;let K=de,Q;function Qe(e=11){if(!Q||K+e>de*2){Q="",K=0;for(let t=0;t<de;t++)Q+=(256+Math.random()*256|0).toString(16).substring(1)}return Q.substring(K,K+++e)}function Xe(e){const{batch:t,chain:r,ccipRead:n,dataSuffix:o,key:a="base",name:i="Base Client",type:u="base"}=e,d=e.experimental_blockTag??(typeof r?.experimental_preconfirmationTime=="number"?"pending":void 0),l=r?.blockTime??12e3,f=Math.min(Math.max(Math.floor(l/2),500),4e3),p=e.pollingInterval??f,m=e.cacheTime??p,h=e.account?c.parseAccount(e.account):void 0,{config:g,request:b,value:y}=e.transport({account:h,chain:r,pollingInterval:p}),w={...g,...y},E={account:h,batch:t,cacheTime:m,ccipRead:n,chain:r,dataSuffix:o,key:a,name:i,pollingInterval:p,request:b,transport:w,type:u,uid:Qe(),...d?{experimental_blockTag:d}:{}};function v(A){return C=>{const x=C(A);for(const I in E)delete x[I];const T={...A,...x};return Object.assign(T,{extend:v(T)})}}return Object.assign(E,{extend:v(E)})}function we(e){if(!(e instanceof c.BaseError))return!1;const t=e.walk(r=>r instanceof c.ContractFunctionRevertedError);return t instanceof c.ContractFunctionRevertedError?t.data?.errorName==="HttpError"||t.data?.errorName==="ResolverError"||t.data?.errorName==="ResolverNotContract"||t.data?.errorName==="ResolverNotFound"||t.data?.errorName==="ReverseAddressMismatch"||t.data?.errorName==="UnsupportedResolverProfile":!1}function et(e){if(e.length!==66||e.indexOf("[")!==0||e.indexOf("]")!==65)return null;const t=`0x${e.slice(1,65)}`;return c.isHex(t)?t:null}function fe(e){let t=new Uint8Array(32).fill(0);if(!e)return c.bytesToHex(t);const r=e.split(".");for(let n=r.length-1;n>=0;n-=1){const o=et(r[n]),a=o?c.toBytes(o):c.keccak256(c.stringToBytes(r[n]),"bytes");t=c.keccak256(c.concat([t,a]),"bytes")}return c.bytesToHex(t)}function Xt(e){return`[${e.slice(2)}]`}function er(e){const t=new Uint8Array(32).fill(0);return e?et(e)||c.keccak256(c.stringToBytes(e)):c.bytesToHex(t)}function ve(e){const t=e.replace(/^\.|\.$/gm,"");if(t.length===0)return new Uint8Array(1);const r=new Uint8Array(c.stringToBytes(t).byteLength+2);let n=0;const o=t.split(".");for(let a=0;a<o.length;a++){let i=c.stringToBytes(o[a]);i.byteLength>255&&(i=c.stringToBytes(Xt(er(o[a])))),r[n]=i.length,r.set(i,n+1),n+=i.length+1}return r.byteLength!==n+1?r.slice(0,n+1):r}async function tr(e,t){const{blockNumber:r,blockTag:n,coinType:o,name:a,gatewayUrls:i,strict:u}=t,{chain:d}=e,l=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!d)throw new Error("client chain not configured. universalResolverAddress is required.");return s.getChainContractAddress({blockNumber:r,chain:d,contract:"ensUniversalResolver"})})(),f=d?.ensTlds;if(f&&!f.some(m=>a.endsWith(m)))return null;const p=o!=null?[fe(a),BigInt(o)]:[fe(a)];try{const m=s.encodeFunctionData({abi:s.addressResolverAbi,functionName:"addr",args:p}),h={address:l,abi:s.universalResolverResolveAbi,functionName:"resolveWithGateways",args:[c.toHex(ve(a)),m,i??[be.localBatchGatewayUrl]],blockNumber:r,blockTag:n},b=await s.getAction(e,s.readContract,"readContract")(h);if(b[0]==="0x")return null;const y=rr({coinType:o,data:b[0],args:p});return y==="0x"||c.trim(y)==="0x00"?null:y}catch(m){if(u)throw m;if(we(m))return null;throw m}}function rr({coinType:e,data:t,args:r}){try{return s.decodeFunctionResult({abi:s.addressResolverAbi,args:r,functionName:"addr",data:t})}catch(n){if(e==null)throw n;const o=c.trim(t);if(c.size(o)===20)return c.getAddress(o);throw n}}class nr extends c.BaseError{constructor({data:t}){super("Unable to extract image from metadata. The metadata may be malformed or invalid.",{metaMessages:["- Metadata must be a JSON object with at least an `image`, `image_url` or `image_data` property.","",`Provided data: ${JSON.stringify(t)}`],name:"EnsAvatarInvalidMetadataError"})}}class G extends c.BaseError{constructor({reason:t}){super(`ENS NFT avatar URI is invalid. ${t}`,{name:"EnsAvatarInvalidNftUriError"})}}class Ee extends c.BaseError{constructor({uri:t}){super(`Unable to resolve ENS avatar URI "${t}". The URI may be malformed, invalid, or does not respond with a valid image.`,{name:"EnsAvatarUriResolutionError"})}}class sr extends c.BaseError{constructor({namespace:t}){super(`ENS NFT avatar namespace "${t}" is not supported. Must be "erc721" or "erc1155".`,{name:"EnsAvatarUnsupportedNamespaceError"})}}const or=/(?<protocol>https?:\/\/[^/]*|ipfs:\/|ipns:\/|ar:\/)?(?<root>\/)?(?<subpath>ipfs\/|ipns\/)?(?<target>[\w\-.]+)(?<subtarget>\/.*)?/,ar=/^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[A-Za-z2-7]{58,}|B[A-Z2-7]{58,}|z[1-9A-HJ-NP-Za-km-z]{48,}|F[0-9A-F]{50,})(\/(?<target>[\w\-.]+))?(?<subtarget>\/.*)?$/,ir=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,cr=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function ur(e){try{const t=await fetch(e,{method:"HEAD"});return t.status===200?t.headers.get("content-type")?.startsWith("image/"):!1}catch(t){return typeof t=="object"&&typeof t.response<"u"||!Object.hasOwn(globalThis,"Image")?!1:new Promise(r=>{const n=new Image;n.onload=()=>{r(!0)},n.onerror=()=>{r(!1)},n.src=e})}}function _e(e,t){return e?e.endsWith("/")?e.slice(0,-1):e:t}function tt({uri:e,gatewayUrls:t}){const r=ir.test(e);if(r)return{uri:e,isOnChain:!0,isEncoded:r};const n=_e(t?.ipfs,"https://ipfs.io"),o=_e(t?.arweave,"https://arweave.net"),a=e.match(or),{protocol:i,subpath:u,target:d,subtarget:l=""}=a?.groups||{},f=i==="ipns:/"||u==="ipns/",p=i==="ipfs:/"||u==="ipfs/"||ar.test(e);if(e.startsWith("http")&&!f&&!p){let h=e;return t?.arweave&&(h=e.replace(/https:\/\/arweave.net/g,t?.arweave)),{uri:h,isOnChain:!1,isEncoded:!1}}if((f||p)&&d)return{uri:`${n}/${f?"ipns":"ipfs"}/${d}${l}`,isOnChain:!1,isEncoded:!1};if(i==="ar:/"&&d)return{uri:`${o}/${d}${l||""}`,isOnChain:!1,isEncoded:!1};let m=e.replace(cr,"");if(m.startsWith("<svg")&&(m=`data:image/svg+xml;base64,${btoa(m)}`),m.startsWith("data:")||m.startsWith("{"))return{uri:m,isOnChain:!0,isEncoded:!1};throw new Ee({uri:e})}function rt(e){if(typeof e!="object"||!("image"in e)&&!("image_url"in e)&&!("image_data"in e))throw new nr({data:e});return e.image||e.image_url||e.image_data}async function dr({gatewayUrls:e,uri:t}){try{const r=await fetch(t).then(o=>o.json());return await Ae({gatewayUrls:e,uri:rt(r)})}catch{throw new Ee({uri:t})}}async function Ae({gatewayUrls:e,uri:t}){const{uri:r,isOnChain:n}=tt({uri:t,gatewayUrls:e});if(n||await ur(r))return r;throw new Ee({uri:t})}function fr(e){let t=e;t.startsWith("did:nft:")&&(t=t.replace("did:nft:","").replace(/_/g,"/"));const[r,n,o]=t.split("/"),[a,i]=r.split(":"),[u,d]=n.split(":");if(!a||a.toLowerCase()!=="eip155")throw new G({reason:"Only EIP-155 supported"});if(!i)throw new G({reason:"Chain ID not found"});if(!d)throw new G({reason:"Contract address not found"});if(!o)throw new G({reason:"Token ID not found"});if(!u)throw new G({reason:"ERC namespace not found"});return{chainID:Number.parseInt(i,10),namespace:u.toLowerCase(),contractAddress:d,tokenID:o}}async function lr(e,{nft:t}){if(t.namespace==="erc721")return s.readContract(e,{address:t.contractAddress,abi:[{name:"tokenURI",type:"function",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"tokenURI",args:[BigInt(t.tokenID)]});if(t.namespace==="erc1155")return s.readContract(e,{address:t.contractAddress,abi:[{name:"uri",type:"function",stateMutability:"view",inputs:[{name:"_id",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"uri",args:[BigInt(t.tokenID)]});throw new sr({namespace:t.namespace})}async function hr(e,{gatewayUrls:t,record:r}){return/eip155:/i.test(r)?pr(e,{gatewayUrls:t,record:r}):Ae({uri:r,gatewayUrls:t})}async function pr(e,{gatewayUrls:t,record:r}){const n=fr(r),o=await lr(e,{nft:n}),{uri:a,isOnChain:i,isEncoded:u}=tt({uri:o,gatewayUrls:t});if(i&&(a.includes("data:application/json;base64,")||a.startsWith("{"))){const l=u?atob(a.replace("data:application/json;base64,","")):a,f=JSON.parse(l);return Ae({uri:rt(f),gatewayUrls:t})}let d=n.tokenID;return n.namespace==="erc1155"&&(d=d.replace("0x","").padStart(64,"0")),dr({gatewayUrls:t,uri:a.replace(/(?:0x)?{id}/,d)})}async function nt(e,t){const{blockNumber:r,blockTag:n,key:o,name:a,gatewayUrls:i,strict:u}=t,{chain:d}=e,l=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!d)throw new Error("client chain not configured. universalResolverAddress is required.");return s.getChainContractAddress({blockNumber:r,chain:d,contract:"ensUniversalResolver"})})(),f=d?.ensTlds;if(f&&!f.some(p=>a.endsWith(p)))return null;try{const p={address:l,abi:s.universalResolverResolveAbi,args:[c.toHex(ve(a)),s.encodeFunctionData({abi:s.textResolverAbi,functionName:"text",args:[fe(a),o]}),i??[be.localBatchGatewayUrl]],functionName:"resolveWithGateways",blockNumber:r,blockTag:n},h=await s.getAction(e,s.readContract,"readContract")(p);if(h[0]==="0x")return null;const g=s.decodeFunctionResult({abi:s.textResolverAbi,functionName:"text",data:h[0]});return g===""?null:g}catch(p){if(u)throw p;if(we(p))return null;throw p}}async function mr(e,{blockNumber:t,blockTag:r,assetGatewayUrls:n,name:o,gatewayUrls:a,strict:i,universalResolverAddress:u}){const d=await s.getAction(e,nt,"getEnsText")({blockNumber:t,blockTag:r,key:"avatar",name:o,universalResolverAddress:u,gatewayUrls:a,strict:i});if(!d)return null;try{return await hr(e,{record:d,gatewayUrls:n})}catch{return null}}async function gr(e,t){const{address:r,blockNumber:n,blockTag:o,coinType:a=60n,gatewayUrls:i,strict:u}=t,{chain:d}=e,l=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!d)throw new Error("client chain not configured. universalResolverAddress is required.");return s.getChainContractAddress({blockNumber:n,chain:d,contract:"ensUniversalResolver"})})();try{const f={address:l,abi:s.universalResolverReverseAbi,args:[r,a,i??[be.localBatchGatewayUrl]],functionName:"reverseWithGateways",blockNumber:n,blockTag:o},p=s.getAction(e,s.readContract,"readContract"),[m]=await p(f);return m||null}catch(f){if(u)throw f;if(we(f))return null;throw f}}async function yr(e,t){const{blockNumber:r,blockTag:n,name:o}=t,{chain:a}=e,i=(()=>{if(t.universalResolverAddress)return t.universalResolverAddress;if(!a)throw new Error("client chain not configured. universalResolverAddress is required.");return s.getChainContractAddress({blockNumber:r,chain:a,contract:"ensUniversalResolver"})})(),u=a?.ensTlds;if(u&&!u.some(l=>o.endsWith(l)))throw new Error(`${o} is not a valid ENS TLD (${u?.join(", ")}) for chain "${a.name}" (id: ${a.id}).`);const[d]=await s.getAction(e,s.readContract,"readContract")({address:i,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"},{type:"uint256"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[c.toHex(ve(o))],blockNumber:r,blockTag:n});return d}async function st(e,t){const{account:r=e.account,blockNumber:n,blockTag:o="latest",blobs:a,data:i,gas:u,gasPrice:d,maxFeePerBlobGas:l,maxFeePerGas:f,maxPriorityFeePerGas:p,to:m,value:h,...g}=t,b=r?c.parseAccount(r):void 0;try{c.assertRequest(t);const w=(typeof n=="bigint"?c.numberToHex(n):void 0)||o,E=e.chain?.formatters?.transactionRequest?.format,A=(E||c.formatTransactionRequest)({...c.extract(g,{format:E}),account:b,blobs:a,data:i,gas:u,gasPrice:d,maxFeePerBlobGas:l,maxFeePerGas:f,maxPriorityFeePerGas:p,to:m,value:h},"createAccessList"),C=await e.request({method:"eth_createAccessList",params:[A,w]});if(C.error)throw new c.BaseError(C.error,{details:C.error});return{accessList:C.accessList,gasUsed:BigInt(C.gasUsed)}}catch(y){throw c.getCallError(y,{...t,account:b,chain:e.chain})}}async function br(e){const t=s.createFilterRequestScope(e,{method:"eth_newBlockFilter"}),r=await e.request({method:"eth_newBlockFilter"});return{id:r,request:t(r),type:"block"}}async function ot(e,{address:t,args:r,event:n,events:o,fromBlock:a,strict:i,toBlock:u}={}){const d=o??(n?[n]:void 0),l=s.createFilterRequestScope(e,{method:"eth_newFilter"});let f=[];d&&(f=[d.flatMap(h=>s.encodeEventTopics({abi:[h],eventName:h.name,args:r}))],n&&(f=f[0]));const p=await e.request({method:"eth_newFilter",params:[{address:t,fromBlock:typeof a=="bigint"?c.numberToHex(a):a,toBlock:typeof u=="bigint"?c.numberToHex(u):u,...f.length?{topics:f}:{}}]});return{abi:d,args:r,eventName:n?n.name:void 0,fromBlock:a,id:p,request:l(p),strict:!!i,toBlock:u,type:"event"}}async function at(e){const t=s.createFilterRequestScope(e,{method:"eth_newPendingTransactionFilter"}),r=await e.request({method:"eth_newPendingTransactionFilter"});return{id:r,request:t(r),type:"transaction"}}async function wr(e,{address:t,blockHash:r,blockNumber:n,blockTag:o=e.experimental_blockTag??"latest",requireCanonical:a}){const i=s.formatBlockParameter({blockHash:r,blockNumber:n,blockTag:o,requireCanonical:a});if(e.batch?.multicall&&e.chain?.contracts?.multicall3){const d=e.chain.contracts.multicall3.address,l=s.encodeFunctionData({abi:s.multicall3Abi,functionName:"getEthBalance",args:[t]}),{data:f}=await s.getAction(e,s.call,"call")({to:d,data:l,blockHash:r,blockNumber:n,blockTag:o,requireCanonical:a});return s.decodeFunctionResult({abi:s.multicall3Abi,functionName:"getEthBalance",args:[t],data:f||"0x"})}const u=await e.request({method:"eth_getBalance",params:[t,i]});return BigInt(u)}async function vr(e){const t=await e.request({method:"eth_blobBaseFee"});return BigInt(t)}async function Er(e,{blockHash:t,blockNumber:r,blockTag:n=e.experimental_blockTag??"latest"}={}){const o=r!==void 0?c.numberToHex(r):void 0,a=await e.request({method:"eth_getBlockReceipts",params:[t||o||n]},{dedupe:!!(t||o)});if(!a)throw new s.BlockNotFoundError({blockHash:t,blockNumber:r});const i=e.chain?.formatters?.transactionReceipt?.format||c.formatTransactionReceipt;return a.map(u=>i(u,"getBlockReceipts"))}async function Ar(e,{blockHash:t,blockNumber:r,blockTag:n="latest"}={}){const o=r!==void 0?c.numberToHex(r):void 0;let a;return t?a=await e.request({method:"eth_getBlockTransactionCountByHash",params:[t]},{dedupe:!0}):a=await e.request({method:"eth_getBlockTransactionCountByNumber",params:[o||n]},{dedupe:!!o}),c.hexToNumber(a)}async function re(e,{address:t,blockHash:r,blockNumber:n,blockTag:o="latest",requireCanonical:a}){const i=s.formatBlockParameter({blockHash:r,blockNumber:n,blockTag:o,requireCanonical:a}),u=await e.request({method:"eth_getCode",params:[t,i]},{dedupe:typeof n=="bigint"||r!==void 0});if(u!=="0x")return u}async function Tr(e,{address:t,blockNumber:r,blockTag:n="latest"}){const o=await re(e,{address:t,...r!==void 0?{blockNumber:r}:{blockTag:n}});if(o&&c.size(o)===23&&o.startsWith("0xef0100"))return c.getAddress(c.slice(o,3,23))}class xr extends c.BaseError{constructor({address:t}){super(`No EIP-712 domain found on contract "${t}".`,{metaMessages:["Ensure that:",`- The contract is deployed at the address "${t}".`,"- `eip712Domain()` function exists on the contract.","- `eip712Domain()` function matches signature to ERC-5267 specification."],name:"Eip712DomainNotFoundError"})}}async function Rr(e,t){const{address:r,factory:n,factoryData:o}=t;try{const[a,i,u,d,l,f,p]=await s.getAction(e,s.readContract,"readContract")({abi:Cr,address:r,functionName:"eip712Domain",factory:n,factoryData:o});return{domain:{name:i,version:u,chainId:Number(d),verifyingContract:l,salt:f},extensions:p,fields:a}}catch(a){const i=a;throw i.name==="ContractFunctionExecutionError"&&i.cause.name==="ContractFunctionZeroDataError"?new xr({address:r}):i}}const Cr=[{inputs:[],name:"eip712Domain",outputs:[{name:"fields",type:"bytes1"},{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"},{name:"salt",type:"bytes32"},{name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"}];function Ir(e){return{baseFeePerGas:e.baseFeePerGas.map(t=>BigInt(t)),gasUsedRatio:e.gasUsedRatio,oldestBlock:BigInt(e.oldestBlock),reward:e.reward?.map(t=>t.map(r=>BigInt(r)))}}async function Br(e,{blockCount:t,blockNumber:r,blockTag:n="latest",rewardPercentiles:o}){const a=typeof r=="bigint"?c.numberToHex(r):void 0,i=await e.request({method:"eth_feeHistory",params:[c.numberToHex(t),a||n,o]},{dedupe:!!a});return Ir(i)}async function Pr(e,{filter:t}){const r=t.strict??!1,o=(await t.request({method:"eth_getFilterLogs",params:[t.id]})).map(a=>c.formatLog(a));return t.abi?s.parseEventLogs({abi:t.abi,logs:o,strict:r}):o}async function kr({address:e,authorization:t,signature:r}){return s.isAddressEqual(c.getAddress(e),await s.recoverAuthorizationAddress({authorization:t,signature:r}))}const X=new c.LruMap(8192);function Nr(e,{enabled:t=!0,id:r}){if(!t||!r)return e();if(X.get(r))return X.get(r);const n=e().finally(()=>X.delete(r));return X.set(r,n),n}function Sr(e,t={}){return async(r,n={})=>{const{dedupe:o=!1,methods:a,retryDelay:i=150,retryCount:u=3,signal:d,uid:l}={...t,...n},{method:f}=r;if(a?.exclude?.includes(f))throw new s.MethodNotSupportedRpcError(new Error("method not supported"),{method:f});if(a?.include&&!a.include.includes(f))throw new s.MethodNotSupportedRpcError(new Error("method not supported"),{method:f});if(d?.aborted)throw c.getAbortError(d);const p=o?Fr(`${l}.${c.stringify(r)}`):void 0;return Nr(()=>te(async()=>{try{return await e(r,d?{signal:d}:void 0)}catch(m){if(d?.aborted)throw c.getAbortError(d);if(c.isAbortError(m))throw m;const h=m;switch(h.code){case s.ParseRpcError.code:throw new s.ParseRpcError(h);case s.InvalidRequestRpcError.code:throw new s.InvalidRequestRpcError(h);case s.MethodNotFoundRpcError.code:throw new s.MethodNotFoundRpcError(h,{method:r.method});case s.InvalidParamsRpcError.code:throw new s.InvalidParamsRpcError(h);case s.InternalRpcError.code:throw new s.InternalRpcError(h);case s.InvalidInputRpcError.code:throw new s.InvalidInputRpcError(h);case s.ResourceNotFoundRpcError.code:throw new s.ResourceNotFoundRpcError(h);case s.ResourceUnavailableRpcError.code:throw new s.ResourceUnavailableRpcError(h);case s.TransactionRejectedRpcError.code:throw new s.TransactionRejectedRpcError(h);case s.MethodNotSupportedRpcError.code:throw new s.MethodNotSupportedRpcError(h,{method:r.method});case s.LimitExceededRpcError.code:throw new s.LimitExceededRpcError(h);case s.JsonRpcVersionUnsupportedError.code:throw new s.JsonRpcVersionUnsupportedError(h);case s.UserRejectedRequestError.code:throw new s.UserRejectedRequestError(h);case s.UnauthorizedProviderError.code:throw new s.UnauthorizedProviderError(h);case s.UnsupportedProviderMethodError.code:throw new s.UnsupportedProviderMethodError(h);case s.ProviderDisconnectedError.code:throw new s.ProviderDisconnectedError(h);case s.ChainDisconnectedError.code:throw new s.ChainDisconnectedError(h);case s.SwitchChainError.code:throw new s.SwitchChainError(h);case s.UnsupportedNonOptionalCapabilityError.code:throw new s.UnsupportedNonOptionalCapabilityError(h);case s.UnsupportedChainIdError.code:throw new s.UnsupportedChainIdError(h);case s.DuplicateIdError.code:throw new s.DuplicateIdError(h);case s.UnknownBundleIdError.code:throw new s.UnknownBundleIdError(h);case s.BundleTooLargeError.code:throw new s.BundleTooLargeError(h);case s.AtomicReadyWalletRejectedUpgradeError.code:throw new s.AtomicReadyWalletRejectedUpgradeError(h);case s.AtomicityNotSupportedError.code:throw new s.AtomicityNotSupportedError(h);case 5e3:throw new s.UserRejectedRequestError(h);case s.WalletConnectSessionSettlementError.code:throw new s.WalletConnectSessionSettlementError(h);default:throw m instanceof c.BaseError?m:new s.UnknownRpcError(h)}}},{delay:({count:m,error:h})=>{if(h&&h instanceof s.HttpRequestError){const g=h?.headers?.get("Retry-After");if(g?.match(/\d/))return Number.parseInt(g,10)*1e3}return~~(1<<m)*i},retryCount:u,signal:d,shouldRetry:({error:m})=>zr(m)}),{enabled:o,id:p})}}function zr(e){return c.isAbortError(e)?!1:"code"in e&&typeof e.code=="number"?e.code===-1||e.code===s.LimitExceededRpcError.code||e.code===s.InternalRpcError.code||e.code===429:e instanceof s.HttpRequestError&&e.status?e.status===403||e.status===408||e.status===413||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504:!0}function Fr(e,t=0){let r=3735928559^t,n=1103547991^t;for(let o=0;o<e.length;o++){const a=e.charCodeAt(o);r=Math.imul(r^a,2654435761),n=Math.imul(n^a,1597334677)}return r=Math.imul(r^r>>>16,2246822507),r^=Math.imul(n^n>>>16,3266489909),n=Math.imul(n^n>>>16,2246822507),n^=Math.imul(r^r>>>16,3266489909),(4294967296*(2097151&n)+(r>>>0)).toString(36)}function $r(e,{errorInstance:t=new Error("timed out"),timeout:r,signal:n}){return new Promise((o,a)=>{(async()=>{let i;const u=new AbortController;try{r>0&&(i=setTimeout(()=>{n&&u.abort()},r)),o(await e({signal:u?.signal||null}))}catch(d){if(u?.signal.aborted&&c.isAbortError(d)){a(t);return}a(d)}finally{clearTimeout(i)}})()})}function _r(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const qe=_r();function qr(e,t={}){const{url:r,headers:n}=Ur(e);return{async request(o){const{body:a,fetchFn:i=t.fetchFn??fetch,onRequest:u=t.onRequest,onResponse:d=t.onResponse,timeout:l=t.timeout??1e4}=o,f={...t.fetchOptions??{},...o.fetchOptions??{}},{headers:p,method:m,signal:h}=f;try{const g=await $r(async({signal:y})=>{const w={...f,body:Array.isArray(a)?c.stringify(a.map(C=>({jsonrpc:"2.0",id:C.id??qe.take(),...C}))):c.stringify({jsonrpc:"2.0",id:a.id??qe.take(),...a}),headers:{...n,"Content-Type":"application/json",...p},method:m||"POST",signal:h||(l>0?y:null)},E=new Request(r,w),v=await u?.(E,w)??{...w,url:r};return await i(v.url??r,v)},{errorInstance:new s.TimeoutError({body:a,url:r}),timeout:l,signal:!0});d&&await d(g);let b;if(g.headers.get("Content-Type")?.startsWith("application/json"))b=await g.json();else{b=await g.text();try{b=JSON.parse(b||"{}")}catch(y){if(g.ok)throw y;b={error:b}}}if(!g.ok){if(typeof b.error?.code=="number"&&typeof b.error?.message=="string")return b;throw new s.HttpRequestError({body:a,details:c.stringify(b.error)||g.statusText,headers:g.headers,status:g.status,url:r})}return b}catch(g){throw h?.aborted?c.getAbortError(h):c.isAbortError(g)||g instanceof s.HttpRequestError||g instanceof s.TimeoutError?g:new s.HttpRequestError({body:a,cause:g,url:r})}}}}function Ur(e){try{const t=new URL(e),r=(()=>{if(t.username){const n=`${decodeURIComponent(t.username)}:${decodeURIComponent(t.password)}`;return t.username="",t.password="",{url:t.toString(),headers:{Authorization:`Basic ${btoa(n)}`}}}})();return{url:t.toString(),...r}}catch{return{url:e}}}const Dr=`Ethereum Signed Message:
|
|
2
|
+
`;function Or(e){const t=typeof e=="string"?c.stringToHex(e):typeof e.raw=="string"?e.raw:c.bytesToHex(e.raw),r=c.stringToHex(`${Dr}${c.size(t)}`);return c.concat([r,t])}function it(e,t){return c.keccak256(Or(e),t)}class Lr extends c.BaseError{constructor({domain:t}){super(`Invalid domain "${c.stringify(t)}".`,{metaMessages:["Must be a valid EIP-712 domain."]})}}class Mr extends c.BaseError{constructor({primaryType:t,types:r}){super(`Invalid primary type \`${t}\` must be one of \`${JSON.stringify(Object.keys(r))}\`.`,{docsPath:"/api/glossary/Errors#typeddatainvalidprimarytypeerror",metaMessages:["Check that the primary type is a key in `types`."]})}}class Hr extends c.BaseError{constructor({type:t}){super(`Struct type "${t}" is invalid.`,{metaMessages:["Struct type must not be a Solidity type."],name:"InvalidStructTypeError"})}}function jr(e){const{domain:t,message:r,primaryType:n,types:o}=e,a=(d,l)=>{const f={...l};for(const p of d){const{name:m,type:h}=p;h==="address"&&(f[m]=f[m].toLowerCase())}return f},i=o.EIP712Domain?t?a(o.EIP712Domain,t):{}:{},u=(()=>{if(n!=="EIP712Domain")return a(o[n],r)})();return c.stringify({domain:i,message:u,primaryType:n,types:o})}function ct(e){const{domain:t,message:r,primaryType:n,types:o}=e,a=(i,u)=>{for(const d of i){const{name:l,type:f}=d,p=u[l],m=f.match(c.integerRegex$1);if(m&&(typeof p=="number"||typeof p=="bigint")){const[b,y,w]=m;c.numberToHex(p,{signed:y==="int",size:Number.parseInt(w,10)/8})}if(f==="address"&&typeof p=="string"&&!c.isAddress(p))throw new c.InvalidAddressError({address:p});const h=f.match(c.bytesRegex$1);if(h){const[b,y]=h;if(y&&c.size(p)!==Number.parseInt(y,10))throw new c.BytesSizeMismatchError({expectedSize:Number.parseInt(y,10),givenSize:c.size(p)})}const g=o[f];g&&(Wr(f),a(g,p))}};if(o.EIP712Domain&&t){if(typeof t!="object")throw new Lr({domain:t});a(o.EIP712Domain,t)}if(n!=="EIP712Domain")if(o[n])a(o[n],r);else throw new Mr({primaryType:n,types:o})}function ut({domain:e}){return[typeof e?.name=="string"&&{name:"name",type:"string"},e?.version&&{name:"version",type:"string"},(typeof e?.chainId=="number"||typeof e?.chainId=="bigint")&&{name:"chainId",type:"uint256"},e?.verifyingContract&&{name:"verifyingContract",type:"address"},e?.salt&&{name:"salt",type:"bytes32"}].filter(Boolean)}function Wr(e){if(e==="address"||e==="bool"||e==="string"||e.startsWith("bytes")||e.startsWith("uint")||e.startsWith("int"))throw new Hr({type:e})}function Vr(e){const{domain:t={},message:r,primaryType:n}=e,o={EIP712Domain:ut({domain:t}),...e.types};ct({domain:t,message:r,primaryType:n,types:o});const a=["0x1901"];return t&&a.push(Gr({domain:t,types:o})),n!=="EIP712Domain"&&a.push(dt({data:r,primaryType:n,types:o})),c.keccak256(c.concat(a))}function Gr({domain:e,types:t}){return dt({data:e,primaryType:"EIP712Domain",types:t})}function dt({data:e,primaryType:t,types:r}){const n=ft({data:e,primaryType:t,types:r});return c.keccak256(n)}function ft({data:e,primaryType:t,types:r}){const n=[{type:"bytes32"}],o=[Zr({primaryType:t,types:r})];for(const a of r[t]){const[i,u]=ht({types:r,name:a.name,type:a.type,value:e[a.name]});n.push(i),o.push(u)}return c.encodeAbiParameters(n,o)}function Zr({primaryType:e,types:t}){const r=c.toHex(Jr({primaryType:e,types:t}));return c.keccak256(r)}function Jr({primaryType:e,types:t}){let r="";const n=lt({primaryType:e,types:t});n.delete(e);const o=[e,...Array.from(n).sort()];for(const a of o)r+=`${a}(${t[a].map(({name:i,type:u})=>`${u} ${i}`).join(",")})`;return r}function lt({primaryType:e,types:t},r=new Set){const o=e.match(/^\w*/u)?.[0];if(r.has(o)||t[o]===void 0)return r;r.add(o);for(const a of t[o])lt({primaryType:a.type,types:t},r);return r}function ht({types:e,name:t,type:r,value:n}){if(e[r]!==void 0)return[{type:"bytes32"},c.keccak256(ft({data:n,primaryType:r,types:e}))];if(r==="bytes")return[{type:"bytes32"},c.keccak256(n)];if(r==="string")return[{type:"bytes32"},c.keccak256(c.toHex(n))];if(r.lastIndexOf("]")===r.length-1){const o=r.slice(0,r.lastIndexOf("[")),a=n.map(i=>ht({name:t,type:o,types:e,value:i}));return[{type:"bytes32"},c.keccak256(c.encodeAbiParameters(a.map(([i])=>i),a.map(([,i])=>i)))]}return[{type:r},n]}class Yr extends Map{constructor(t){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=t}get(t){const r=super.get(t);return super.has(t)&&r!==void 0&&(this.delete(t),super.set(t,r)),r}set(t,r){if(super.set(t,r),this.maxSize&&this.size>this.maxSize){const n=this.keys().next().value;n&&this.delete(n)}return this}}const Kr={checksum:new Yr(8192)},ie=Kr.checksum;function pt(e,t={}){const{as:r=typeof e=="string"?"Hex":"Bytes"}=t,n=c.keccak_256(Dt(e));return r==="Bytes"?n:s.fromBytes(n)}const Qr=/^0x[a-fA-F0-9]{40}$/;function se(e,t={}){const{strict:r=!0}=t;if(!Qr.test(e))throw new Ue({address:e,cause:new Xr});if(r){if(e.toLowerCase()===e)return;if(mt(e)!==e)throw new Ue({address:e,cause:new en})}}function mt(e){if(ie.has(e))return ie.get(e);se(e,{strict:!1});const t=e.substring(2).toLowerCase(),r=pt(Lt(t),{as:"Bytes"}),n=t.split("");for(let a=0;a<40;a+=2)r[a>>1]>>4>=8&&n[a]&&(n[a]=n[a].toUpperCase()),(r[a>>1]&15)>=8&&n[a+1]&&(n[a+1]=n[a+1].toUpperCase());const o=`0x${n.join("")}`;return ie.set(e,o),o}function le(e,t={}){const{strict:r=!0}=t??{};try{return se(e,{strict:r}),!0}catch{return!1}}class Ue extends s.BaseError{constructor({address:t,cause:r}){super(`Address "${t}" is invalid.`,{cause:r}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidAddressError"})}}class Xr extends s.BaseError{constructor(){super("Address is not a 20 byte (40 hexadecimal character) value."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidInputError"})}}class en extends s.BaseError{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}const tn=/^(.*)\[([0-9]*)\]$/,rn=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,gt=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,De=2n**256n-1n;function V(e,t,r){const{checksumAddress:n,staticPosition:o}=r,a=Re(t.type);if(a){const[i,u]=a;return sn(e,{...t,type:u},{checksumAddress:n,length:i,staticPosition:o})}if(t.type==="tuple")return un(e,t,{checksumAddress:n,staticPosition:o});if(t.type==="address")return nn(e,{checksum:n});if(t.type==="bool")return on(e);if(t.type.startsWith("bytes"))return an(e,t,{staticPosition:o});if(t.type.startsWith("uint")||t.type.startsWith("int"))return cn(e,t);if(t.type==="string")return dn(e,{staticPosition:o});throw new Ie(t.type)}const Oe=32,he=32;function nn(e,t={}){const{checksum:r=!1}=t,n=e.readBytes(32);return[(a=>r?mt(a):a)(s.fromBytes(Ht(n,-20))),32]}function sn(e,t,r){const{checksumAddress:n,length:o,staticPosition:a}=r;if(!o){const d=D(e.readBytes(he)),l=a+d,f=l+Oe;e.setPosition(l);const p=D(e.readBytes(Oe)),m=Z(t);let h=0;const g=[];for(let b=0;b<p;++b){e.setPosition(f+(m?b*32:h));const[y,w]=V(e,t,{checksumAddress:n,staticPosition:f});h+=w,g.push(y)}return e.setPosition(a+32),[g,32]}if(Z(t)){const d=D(e.readBytes(he)),l=a+d,f=[];for(let p=0;p<o;++p){e.setPosition(l+p*32);const[m]=V(e,t,{checksumAddress:n,staticPosition:l});f.push(m)}return e.setPosition(a+32),[f,32]}let i=0;const u=[];for(let d=0;d<o;++d){const[l,f]=V(e,t,{checksumAddress:n,staticPosition:a+i});i+=f,u.push(l)}return[u,i]}function on(e){return[Wt(e.readBytes(32),{size:32}),32]}function an(e,t,{staticPosition:r}){const[n,o]=t.type.split("bytes");if(!o){const i=D(e.readBytes(32));e.setPosition(r+i);const u=D(e.readBytes(32));if(u===0)return e.setPosition(r+32),["0x",32];const d=e.readBytes(u);return e.setPosition(r+32),[s.fromBytes(d),32]}return[s.fromBytes(e.readBytes(Number.parseInt(o,10),32)),32]}function cn(e,t){const r=t.type.startsWith("int"),n=Number.parseInt(t.type.split("int")[1]||"256",10),o=e.readBytes(32);return[n>48?jt(o,{signed:r}):D(o,{signed:r}),32]}function un(e,t,r){const{checksumAddress:n,staticPosition:o}=r,a=t.components.length===0||t.components.some(({name:d})=>!d),i=a?[]:{};let u=0;if(Z(t)){const d=D(e.readBytes(he)),l=o+d;for(let f=0;f<t.components.length;++f){const p=t.components[f];e.setPosition(l+u);const[m,h]=V(e,p,{checksumAddress:n,staticPosition:l});u+=h,i[a?f:p?.name]=m}return e.setPosition(o+32),[i,32]}for(let d=0;d<t.components.length;++d){const l=t.components[d],[f,p]=V(e,l,{checksumAddress:n,staticPosition:o});i[a?d:l?.name]=f,u+=p}return[i,u]}function dn(e,{staticPosition:t}){const r=D(e.readBytes(32)),n=t+r;e.setPosition(n);const o=D(e.readBytes(32));if(o===0)return e.setPosition(t+32),["",32];const a=e.readBytes(o,32),i=Vt(Ve(a));return e.setPosition(t+32),[i,32]}function fn({checksumAddress:e,parameters:t,values:r}){const n=[];for(let o=0;o<t.length;o++)n.push(Te({checksumAddress:e,parameter:t[o],value:r[o]}));return n}function Te({checksumAddress:e=!1,parameter:t,value:r}){const n=t,o=Re(n.type);if(o){const[a,i]=o;return hn(r,{checksumAddress:e,length:a,parameter:{...n,type:i}})}if(n.type==="tuple")return bn(r,{checksumAddress:e,parameter:n});if(n.type==="address")return ln(r,{checksum:e});if(n.type==="bool")return mn(r);if(n.type.startsWith("uint")||n.type.startsWith("int")){const a=n.type.startsWith("int"),[,,i="256"]=gt.exec(n.type)??[];return gn(r,{signed:a,size:Number(i)})}if(n.type.startsWith("bytes"))return pn(r,{type:n.type});if(n.type==="string")return yn(r);throw new Ie(n.type)}function xe(e){let t=0;for(let a=0;a<e.length;a++){const{dynamic:i,encoded:u}=e[a];i?t+=32:t+=s.size(u)}const r=[],n=[];let o=0;for(let a=0;a<e.length;a++){const{dynamic:i,encoded:u}=e[a];i?(r.push(s.fromNumber(t+o,{size:32})),n.push(u),o+=s.size(u)):r.push(u)}return s.concat(...r,...n)}function ln(e,t){const{checksum:r=!1}=t;return se(e,{strict:r}),{dynamic:!1,encoded:s.padLeft(e.toLowerCase())}}function hn(e,t){const{checksumAddress:r,length:n,parameter:o}=t,a=n===null;if(!Array.isArray(e))throw new In(e);if(!a&&e.length!==n)throw new Cn({expectedLength:n,givenLength:e.length,type:`${o.type}[${n}]`});let i=!1;const u=[];for(let d=0;d<e.length;d++){const l=Te({checksumAddress:r,parameter:o,value:e[d]});l.dynamic&&(i=!0),u.push(l)}if(a||i){const d=xe(u);if(a){const l=s.fromNumber(u.length,{size:32});return{dynamic:!0,encoded:u.length>0?s.concat(l,d):l}}if(i)return{dynamic:!0,encoded:d}}return{dynamic:!1,encoded:s.concat(...u.map(({encoded:d})=>d))}}function pn(e,{type:t}){const[,r]=t.split("bytes"),n=s.size(e);if(!r){let o=e;return n%32!==0&&(o=s.padRight(o,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:s.concat(s.padLeft(s.fromNumber(n,{size:32})),o)}}if(n!==Number.parseInt(r,10))throw new bt({expectedSize:Number.parseInt(r,10),value:e});return{dynamic:!1,encoded:s.padRight(e)}}function mn(e){if(typeof e!="boolean")throw new s.BaseError(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:s.padLeft(s.fromBoolean(e))}}function gn(e,{signed:t,size:r}){if(typeof r=="number"){const n=2n**(BigInt(r)-(t?1n:0n))-1n,o=t?-n-1n:0n;if(e>n||e<o)throw new s.IntegerOutOfRangeError({max:n.toString(),min:o.toString(),signed:t,size:r/8,value:e.toString()})}return{dynamic:!1,encoded:s.fromNumber(e,{size:32,signed:t})}}function yn(e){const t=s.fromString(e),r=Math.ceil(s.size(t)/32),n=[];for(let o=0;o<r;o++)n.push(s.padRight(s.slice(t,o*32,(o+1)*32)));return{dynamic:!0,encoded:s.concat(s.padRight(s.fromNumber(s.size(t),{size:32})),...n)}}function bn(e,t){const{checksumAddress:r,parameter:n}=t;let o=!1;const a=[];for(let i=0;i<n.components.length;i++){const u=n.components[i],d=Array.isArray(e)?i:u.name,l=Te({checksumAddress:r,parameter:u,value:e[d]});a.push(l),l.dynamic&&(o=!0)}return{dynamic:o,encoded:o?xe(a):s.concat(...a.map(({encoded:i})=>i))}}function Re(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function Z(e){const{type:t}=e;if(t==="string"||t==="bytes"||t.endsWith("[]"))return!0;if(t==="tuple")return e.components?.some(Z);const r=Re(e.type);return!!(r&&Z({...e,type:r[1]}))}const wn={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:Number.POSITIVE_INFINITY,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new An({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new En({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Le({offset:e});const t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new Le({offset:e});const t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){const t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){const r=t??this.position;return this.assertPosition(r+e-1),this.bytes.subarray(r,r+e)},inspectUint8(e){const t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){const t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){const t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){const t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();const e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();const r=this.inspectBytes(e);return this.position+=t??e,r},readUint8(){this.assertReadLimit(),this._touch();const e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();const e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();const e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();const e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){const t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===Number.POSITIVE_INFINITY)return;const e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function vn(e,{recursiveReadLimit:t=8192}={}){const r=Object.create(wn);return r.bytes=e,r.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),r.positionReadCount=new Map,r.recursiveReadLimit=t,r}class Le extends s.BaseError{constructor({offset:t}){super(`Offset \`${t}\` cannot be negative.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.NegativeOffsetError"})}}class En extends s.BaseError{constructor({length:t,position:r}){super(`Position \`${r}\` is out of bounds (\`0 < position < ${t}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.PositionOutOfBoundsError"})}}class An extends s.BaseError{constructor({count:t,limit:r}){super(`Recursive read limit of \`${r}\` exceeded (recursive read count: \`${t}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Cursor.RecursiveReadLimitExceededError"})}}function Tn(e,t,r={}){const{as:n="Array",checksumAddress:o=!1}=r,a=typeof t=="string"?We(t):t,i=vn(a);if(j(a)===0&&e.length>0)throw new Rn;if(j(a)&&j(a)<32)throw new xn({data:typeof t=="string"?t:s.fromBytes(t),parameters:e,size:j(a)});let u=0;const d=n==="Array"?[]:{};for(let l=0;l<e.length;++l){const f=e[l];i.setPosition(u);const[p,m]=V(i,f,{checksumAddress:o,staticPosition:0});u+=m,n==="Array"?d.push(p):d[f.name??l]=p}return d}function Ce(e,t,r){const{checksumAddress:n=!1}={};if(e.length!==t.length)throw new wt({expectedLength:e.length,givenLength:t.length});const o=fn({checksumAddress:n,parameters:e,values:t}),a=xe(o);return a.length===0?"0x":a}function pe(e,t){if(e.length!==t.length)throw new wt({expectedLength:e.length,givenLength:t.length});const r=[];for(let n=0;n<e.length;n++){const o=e[n],a=t[n];r.push(pe.encode(o,a))}return s.concat(...r)}(function(e){function t(r,n,o=!1){if(r==="address"){const d=n;return se(d),s.padLeft(d.toLowerCase(),o?32:0)}if(r==="string")return s.fromString(n);if(r==="bytes")return n;if(r==="bool")return s.padLeft(s.fromBoolean(n),o?32:1);const a=r.match(gt);if(a){const[d,l,f="256"]=a,p=Number.parseInt(f,10)/8;return s.fromNumber(n,{size:o?32:p,signed:l==="int"})}const i=r.match(rn);if(i){const[d,l]=i;if(Number.parseInt(l,10)!==(n.length-2)/2)throw new bt({expectedSize:Number.parseInt(l,10),value:n});return s.padRight(n,o?32:0)}const u=r.match(tn);if(u&&Array.isArray(n)){const[d,l]=u,f=[];for(let p=0;p<n.length;p++)f.push(t(l,n[p],!0));return f.length===0?"0x":s.concat(...f)}throw new Ie(r)}e.encode=t})(pe||(pe={}));function yt(e){return Array.isArray(e)&&typeof e[0]=="string"||typeof e=="string"?Fe(e):e}class xn extends s.BaseError{constructor({data:t,parameters:r,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${c.formatAbiParameters(r)})`,`Data: ${t} (${n} bytes)`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.DataSizeTooSmallError"})}}class Rn extends s.BaseError{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.'),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ZeroDataError"})}}class Cn extends s.BaseError{constructor({expectedLength:t,givenLength:r,type:n}){super(`Array length mismatch for type \`${n}\`. Expected: \`${t}\`. Given: \`${r}\`.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.ArrayLengthMismatchError"})}}class bt extends s.BaseError{constructor({expectedSize:t,value:r}){super(`Size of bytes "${r}" (bytes${s.size(r)}) does not match expected size (bytes${t}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.BytesSizeMismatchError"})}}class wt extends s.BaseError{constructor({expectedLength:t,givenLength:r}){super(["ABI encoding parameters/values length mismatch.",`Expected length (parameters): ${t}`,`Given length (values): ${r}`].join(`
|
|
3
|
+
`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.LengthMismatchError"})}}class In extends s.BaseError{constructor(t){super(`Value \`${t}\` is not a valid array.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidArrayError"})}}class Ie extends s.BaseError{constructor(t){super(`Type \`${t}\` is not a valid ABI Type.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiParameters.InvalidTypeError"})}}function vt(e,t={}){const{recovered:r}=t;if(typeof e.r>"u")throw new ce({signature:e});if(typeof e.s>"u")throw new ce({signature:e});if(r&&typeof e.yParity>"u")throw new ce({signature:e});if(e.r<0n||e.r>De)throw new Fn({value:e.r});if(e.s<0n||e.s>De)throw new $n({value:e.s});if(typeof e.yParity=="number"&&e.yParity!==0&&e.yParity!==1)throw new Pe({value:e.yParity})}function Bn(e){return Et(s.fromBytes(e))}function Et(e){if(e.length!==130&&e.length!==132)throw new zn({signature:e});const t=BigInt(s.slice(e,0,32)),r=BigInt(s.slice(e,32,64)),n=(()=>{const o=+`0x${e.slice(130)}`;if(!Number.isNaN(o))try{return Be(o)}catch{throw new Pe({value:o})}})();return typeof n>"u"?{r:t,s:r}:{r:t,s:r,yParity:n}}function Pn(e){if(!(typeof e.r>"u")&&!(typeof e.s>"u"))return kn(e)}function kn(e){const t=typeof e=="string"?Et(e):e instanceof Uint8Array?Bn(e):typeof e.r=="string"?Sn(e):e.v?Nn(e):{r:e.r,s:e.s,...typeof e.yParity<"u"?{yParity:e.yParity}:{}};return vt(t),t}function Nn(e){return{r:e.r,s:e.s,yParity:Be(e.v)}}function Sn(e){const t=(()=>{const r=e.v?Number(e.v):void 0;let n=e.yParity?Number(e.yParity):void 0;if(typeof r=="number"&&typeof n!="number"&&(n=Be(r)),typeof n!="number")throw new Pe({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function Be(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return e%2===0?1:0;throw new _n({value:e})}class zn extends s.BaseError{constructor({signature:t}){super(`Value \`${t}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${s.size(s.from(t))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class ce extends s.BaseError{constructor({signature:t}){super(`Signature \`${s.stringify(t)}\` is missing either an \`r\`, \`s\`, or \`yParity\` property.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.MissingPropertiesError"})}}class Fn extends s.BaseError{constructor({value:t}){super(`Value \`${t}\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidRError"})}}class $n extends s.BaseError{constructor({value:t}){super(`Value \`${t}\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSError"})}}class Pe extends s.BaseError{constructor({value:t}){super(`Value \`${t}\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidYParityError"})}}class _n extends s.BaseError{constructor({value:t}){super(`Value \`${t}\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidVError"})}}function qn(e,t={}){return typeof e.chainId=="string"?Un(e):{...e,...t.signature}}function Un(e){const{address:t,chainId:r,nonce:n}=e,o=Pn(e);return{address:t,chainId:Number(r),nonce:BigInt(n),...o}}const Dn="0x8010801080108010801080108010801080108010801080108010801080108010",On=yt("(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data");function At(e){if(typeof e=="string"){if(s.slice(e,-32)!==Dn)throw new Hn(e)}else vt(e.authorization)}function Ln(e){At(e);const t=s.toNumber(s.slice(e,-64,-32)),r=s.slice(e,-t-64,-64),n=s.slice(e,0,-t-64),[o,a,i]=Tn(On,r);return{authorization:qn({address:o.delegation,chainId:Number(o.chainId),nonce:o.nonce,yParity:o.yParity,r:o.r,s:o.s}),signature:n,...i&&i!=="0x"?{data:i,to:a}:{}}}function Mn(e){try{return At(e),!0}catch{return!1}}let Hn=class extends s.BaseError{constructor(t){super(`Value \`${t}\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SignatureErc8010.InvalidWrappedSignatureError"})}};function jn(e){return e.map(t=>({...t,value:BigInt(t.value)}))}function Wn(e){return{...e,balance:e.balance?BigInt(e.balance):void 0,nonce:e.nonce?c.hexToNumber(e.nonce):void 0,storageProof:e.storageProof?jn(e.storageProof):void 0}}async function Vn(e,{address:t,blockHash:r,blockNumber:n,blockTag:o="latest",requireCanonical:a,storageKeys:i}){const u=s.formatBlockParameter({blockHash:r,blockNumber:n,blockTag:o,requireCanonical:a}),d=await e.request({method:"eth_getProof",params:[t,i,u]});return Wn(d)}async function Gn(e,{address:t,blockHash:r,blockNumber:n,blockTag:o="latest",requireCanonical:a,slot:i}){const u=s.formatBlockParameter({blockHash:r,blockNumber:n,blockTag:o,requireCanonical:a});return await e.request({method:"eth_getStorageAt",params:[t,i,u]})}async function ke(e,{blockHash:t,blockNumber:r,blockTag:n,hash:o,index:a,sender:i,nonce:u}){const d=n||"latest",l=r!==void 0?c.numberToHex(r):void 0;let f=null;if(o?f=await e.request({method:"eth_getTransactionByHash",params:[o]},{dedupe:!0}):t?f=await e.request({method:"eth_getTransactionByBlockHashAndIndex",params:[t,c.numberToHex(a)]},{dedupe:!0}):typeof a=="number"?f=await e.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[l||d,c.numberToHex(a)]},{dedupe:!!l}):i&&typeof u=="number"&&(f=await e.request({method:"eth_getTransactionBySenderAndNonce",params:[i,c.numberToHex(u)]},{dedupe:!0})),!f)throw new c.TransactionNotFoundError({blockHash:t,blockNumber:r,blockTag:d,hash:o,index:a});return(e.chain?.formatters?.transaction?.format||c.formatTransaction)(f,"getTransaction")}async function Zn(e,{hash:t,transactionReceipt:r}){const[n,o]=await Promise.all([s.getAction(e,s.getBlockNumber,"getBlockNumber")({}),t?s.getAction(e,ke,"getTransaction")({hash:t}):void 0]),a=r?.blockNumber||o?.blockNumber;return a?n-a+1n:0n}async function ee(e,{hash:t}){const r=await e.request({method:"eth_getTransactionReceipt",params:[t]},{dedupe:!0});if(!r)throw new c.TransactionReceiptNotFoundError({hash:t});return(e.chain?.formatters?.transactionReceipt?.format||c.formatTransactionReceipt)(r,"getTransactionReceipt")}async function Jn(e,t){const{account:r,authorizationList:n,allowFailure:o=!0,blockHash:a,blockNumber:i,blockOverrides:u,blockTag:d,requireCanonical:l,stateOverride:f}=t,p=t.contracts,{batchSize:m=t.batchSize??1024,deployless:h=t.deployless??!1}=typeof e.batch?.multicall=="object"?e.batch.multicall:{},g=(()=>{if(t.multicallAddress)return t.multicallAddress;if(h)return null;if(e.chain)return s.getChainContractAddress({blockNumber:i,chain:e.chain,contract:"multicall3"});throw new Error("client chain not configured. multicallAddress is required.")})(),b=[[]];let y=0,w=0;for(let A=0;A<p.length;A++){const{abi:C,address:x,args:T,functionName:I}=p[A];try{const B=s.encodeFunctionData({abi:C,args:T,functionName:I});w+=(B.length-2)/2,m>0&&w>m&&b[y].length>0&&(y++,w=(B.length-2)/2,b[y]=[]),b[y]=[...b[y],{allowFailure:!0,callData:B,target:x}]}catch(B){const P=s.getContractError(B,{abi:C,address:x,args:T,docsPath:"/docs/contract/multicall",functionName:I,sender:r});if(!o)throw P;b[y]=[...b[y],{allowFailure:!0,callData:"0x",target:x}]}}const E=await Promise.allSettled(b.map(A=>s.getAction(e,s.readContract,"readContract")({...g===null?{code:s.multicall3Bytecode}:{address:g},abi:s.multicall3Abi,account:r,args:[A],authorizationList:n,blockHash:a,blockNumber:i,blockOverrides:u,blockTag:d,functionName:"aggregate3",requireCanonical:l,stateOverride:f}))),v=[];for(let A=0;A<E.length;A++){const C=E[A];if(C.status==="rejected"){if(!o)throw C.reason;for(let T=0;T<b[A].length;T++)v.push({status:"failure",error:C.reason,result:void 0});continue}const x=C.value;for(let T=0;T<x.length;T++){const{returnData:I,success:B}=x[T],{callData:P}=b[A][T],{abi:k,address:N,functionName:F,args:z}=p[v.length];try{if(P==="0x")throw new c.AbiDecodingZeroDataError;if(!B)throw new c.RawContractError({data:I});const _=s.decodeFunctionResult({abi:k,args:z,data:I,functionName:F});v.push(o?{result:_,status:"success"}:_)}catch(_){const O=s.getContractError(_,{abi:k,address:N,args:z,docsPath:"/docs/contract/multicall",functionName:F});if(!o)throw O;v.push({error:O,result:void 0,status:"failure"})}}}if(v.length!==p.length)throw new c.BaseError("multicall results mismatch");return v}async function me(e,t){const{blockNumber:r,blockTag:n=e.experimental_blockTag??"latest",blocks:o,returnFullTransactions:a,traceTransfers:i,validation:u}=t;try{const d=[];for(const m of o){const h=m.blockOverrides?s.toRpc(m.blockOverrides):void 0,g=m.calls.map(y=>{const w=y,E=w.account?c.parseAccount(w.account):void 0,v=w.abi?s.encodeFunctionData(w):w.data,A={...w,account:E,data:w.dataSuffix?c.concat([v||"0x",w.dataSuffix]):v,from:w.from??E?.address};return c.assertRequest(A),c.formatTransactionRequest(A)}),b=m.stateOverrides?s.serializeStateOverride(m.stateOverrides):void 0;d.push({blockOverrides:h,calls:g,stateOverrides:b})}const f=(typeof r=="bigint"?c.numberToHex(r):void 0)||n;return(await e.request({method:"eth_simulateV1",params:[{blockStateCalls:d,returnFullTransactions:a,traceTransfers:i,validation:u},f]})).map((m,h)=>({...c.formatBlock(m),calls:m.calls.map((g,b)=>{const{abi:y,args:w,functionName:E,to:v}=o[h].calls[b],A=g.error?.data??g.returnData,C=BigInt(g.gasUsed),x=g.logs?.map(P=>c.formatLog(P)),T=g.status==="0x1"?"success":"failure",I=y&&T==="success"&&A!=="0x"?s.decodeFunctionResult({abi:y,data:A,functionName:E}):null,B=(()=>{if(T==="success")return;let P;if(A==="0x"?P=new c.AbiDecodingZeroDataError:A&&(P=new c.RawContractError({data:A})),!!P)return s.getContractError(P,{abi:y??[],address:v??"0x",args:w,functionName:E??"<unknown>"})})();return{data:A,gasUsed:C,logs:x,status:T,...T==="success"?{result:I}:{error:B}}})}))}catch(d){const l=d,f=c.getNodeError(l,{});throw f instanceof c.UnknownNodeError?l:f}}function ge(e){let t=!0,r="",n=0,o="",a=!1;for(let i=0;i<e.length;i++){const u=e[i];if(["(",")",","].includes(u)&&(t=!0),u==="("&&n++,u===")"&&n--,!!t){if(n===0){if(u===" "&&["event","function","error",""].includes(o))o="";else if(o+=u,u===")"){a=!0;break}continue}if(u===" "){e[i-1]!==","&&r!==","&&r!==",("&&(r="",t=!1);continue}o+=u,r+=u}}if(!a)throw new s.BaseError("Unable to normalize signature.");return o}function ye(e,t){const r=typeof e,n=t.type;switch(n){case"address":return le(e,{strict:!1});case"bool":return r==="boolean";case"function":return r==="string";case"string":return r==="string";default:return n==="tuple"&&"components"in t?Object.values(t.components).every((o,a)=>ye(Object.values(e)[a],o)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(n)?r==="number"||r==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(n)?r==="string"||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(n)?Array.isArray(e)&&e.every(o=>ye(o,{...t,type:n.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function Tt(e,t,r){for(const n in e){const o=e[n],a=t[n];if(o.type==="tuple"&&a.type==="tuple"&&"components"in o&&"components"in a)return Tt(o.components,a.components,r[n]);const i=[o.type,a.type];if(i.includes("address")&&i.includes("bytes20")?!0:i.includes("address")&&i.includes("string")?le(r[n],{strict:!1}):i.includes("address")&&i.includes("bytes")?le(r[n],{strict:!1}):!1)return i}}function xt(e,t={}){const{prepare:r=!0}=t,n=Array.isArray(e)||typeof e=="string"?ze(e):e;return{...n,...r?{hash:W(n)}:{}}}function oe(e,t,r){const{args:n=[],prepare:o=!0}=r??{},a=s.validate(t,{strict:!1}),i=e.filter(l=>a?l.type==="function"||l.type==="error"?Rt(l)===s.slice(t,0,4):l.type==="event"?W(l)===t:!1:"name"in l&&l.name===t);if(i.length===0)throw new ne({name:t});if(i.length===1)return{...i[0],...o?{hash:W(i[0])}:{}};let u;for(const l of i){if(!("inputs"in l))continue;if(!n||n.length===0){if(!l.inputs||l.inputs.length===0)return{...l,...o?{hash:W(l)}:{}};continue}if(!l.inputs||l.inputs.length===0||l.inputs.length!==n.length)continue;if(n.every((p,m)=>{const h="inputs"in l&&l.inputs[m];return h?ye(p,h):!1})){if(u&&"inputs"in u&&u.inputs){const p=Tt(l.inputs,u.inputs,n);if(p)throw new Kn({abiItem:l,type:p[0]},{abiItem:u,type:p[1]})}u=l}}const d=(()=>{if(u)return u;const[l,...f]=i;return{...l,overloads:f}})();if(!d)throw new ne({name:t});return{...d,...o?{hash:W(d)}:{}}}function Rt(...e){const t=(()=>{if(Array.isArray(e[0])){const[r,n]=e;return oe(r,n)}return e[0]})();return s.slice(W(t),0,4)}function Yn(...e){const t=(()=>{if(Array.isArray(e[0])){const[n,o]=e;return oe(n,o)}return e[0]})(),r=typeof t=="string"?t:c.formatAbiItem$1(t);return ge(r)}function W(...e){const t=(()=>{if(Array.isArray(e[0])){const[r,n]=e;return oe(r,n)}return e[0]})();return typeof t!="string"&&"hash"in t&&t.hash?t.hash:pt(s.fromString(Yn(t)))}class Kn extends s.BaseError{constructor(t,r){super("Found ambiguous types in overloaded ABI Items.",{metaMessages:[`\`${t.type}\` in \`${ge(c.formatAbiItem$1(t.abiItem))}\`, and`,`\`${r.type}\` in \`${ge(c.formatAbiItem$1(r.abiItem))}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.AmbiguityError"})}}class ne extends s.BaseError{constructor({name:t,data:r,type:n="item"}){const o=t?` with name "${t}"`:r?` with data "${r}"`:"";super(`ABI ${n}${o} not found.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItem.NotFoundError"})}}function Qn(...e){const[t,r]=(()=>{if(Array.isArray(e[0])){const[a,i]=e;return[es(a),i]}return e})(),{bytecode:n,args:o}=r;return s.concat(n,t.inputs?.length&&o?.length?Ce(t.inputs,o):"0x")}function Xn(e){return xt(e)}function es(e){const t=e.find(r=>r.type==="constructor");if(!t)throw new ne({name:"constructor"});return t}function ts(...e){const[t,r=[]]=(()=>{if(Array.isArray(e[0])){const[l,f,p]=e;return[Me(l,f,{args:p}),p]}const[u,d]=e;return[u,d]})(),{overloads:n}=t,o=n?Me([t,...n],t.name,{args:r}):t,a=rs(o),i=r.length>0?Ce(o.inputs,r):void 0;return i?s.concat(a,i):a}function H(e,t={}){return xt(e,t)}function Me(e,t,r){const n=oe(e,t,r);if(n.type!=="function")throw new ne({name:t,type:"function"});return n}function rs(e){return Rt(e)}const ns="0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",$="0x0000000000000000000000000000000000000000",ss="0x6080604052348015600e575f80fd5b5061016d8061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063f8b2cb4f1461002d575b5f80fd5b610047600480360381019061004291906100db565b61005d565b604051610054919061011e565b60405180910390f35b5f8173ffffffffffffffffffffffffffffffffffffffff16319050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100aa82610081565b9050919050565b6100ba816100a0565b81146100c4575f80fd5b50565b5f813590506100d5816100b1565b92915050565b5f602082840312156100f0576100ef61007d565b5b5f6100fd848285016100c7565b91505092915050565b5f819050919050565b61011881610106565b82525050565b5f6020820190506101315f83018461010f565b9291505056fea26469706673582212203b9fe929fe995c7cf9887f0bdba8a36dd78e8b73f149b17d2d9ad7cd09d2dc6264736f6c634300081a0033";async function os(e,t){const{blockNumber:r,blockTag:n,calls:o,stateOverrides:a,traceAssetChanges:i,traceTransfers:u,validation:d}=t,l=t.account?c.parseAccount(t.account):void 0;if(i&&!l)throw new c.BaseError("`account` is required when `traceAssetChanges` is true");const f=l?Qn(Xn("constructor(bytes, bytes)"),{bytecode:s.deploylessCallViaBytecodeBytecode,args:[ss,ts(H("function getBalance(address)"),[l.address])]}):void 0,p=i?await Promise.all(t.calls.map(async R=>{if(!R.data&&!R.abi)return;const{accessList:S}=await st(e,{account:l.address,...R,data:R.abi?s.encodeFunctionData(R):R.data});return S.map(({address:q,storageKeys:Y})=>Y.length>0?q:null)})).then(R=>R.flat().filter(Boolean)):[],m=await me(e,{blockNumber:r,blockTag:n,blocks:[...i?[{calls:[{data:f}],stateOverrides:a},{calls:p.map((R,S)=>({abi:[H("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[l.address],to:R,from:$,nonce:S})),stateOverrides:[{address:$,nonce:0}]}]:[],{calls:[...o,{to:$}].map(R=>({...R,from:l?.address})),stateOverrides:a},...i?[{calls:[{data:f}]},{calls:p.map((R,S)=>({abi:[H("function balanceOf(address) returns (uint256)")],functionName:"balanceOf",args:[l.address],to:R,from:$,nonce:S})),stateOverrides:[{address:$,nonce:0}]},{calls:p.map((R,S)=>({to:R,abi:[H("function decimals() returns (uint256)")],functionName:"decimals",from:$,nonce:S})),stateOverrides:[{address:$,nonce:0}]},{calls:p.map((R,S)=>({to:R,abi:[H("function tokenURI(uint256) returns (string)")],functionName:"tokenURI",args:[0n],from:$,nonce:S})),stateOverrides:[{address:$,nonce:0}]},{calls:p.map((R,S)=>({to:R,abi:[H("function symbol() returns (string)")],functionName:"symbol",from:$,nonce:S})),stateOverrides:[{address:$,nonce:0}]}]:[]],traceTransfers:u,validation:d}),h=i?m[2]:m[0],[g,b,,y,w,E,v,A]=i?m:[],{calls:C,...x}=h,T=C.slice(0,-1)??[],I=g?.calls??[],B=b?.calls??[],P=[...I,...B].map(R=>R.status==="success"?c.hexToBigInt(R.data):null),k=y?.calls??[],N=w?.calls??[],F=[...k,...N].map(R=>R.status==="success"?c.hexToBigInt(R.data):null),z=(E?.calls??[]).map(R=>R.status==="success"?R.result:null),_=(A?.calls??[]).map(R=>R.status==="success"?R.result:null),O=(v?.calls??[]).map(R=>R.status==="success"?R.result:null),M=[];for(const[R,S]of F.entries()){const q=P[R];if(typeof S!="bigint"||typeof q!="bigint")continue;const Y=z[R-1],St=_[R-1],zt=O[R-1],Se=R===0?{address:ns,decimals:18,symbol:"ETH"}:{address:p[R-1],decimals:zt||Y?Number(Y??1):void 0,symbol:St??void 0};M.some(Ft=>Ft.token.address===Se.address)||M.push({token:Se,value:{pre:q,post:S,diff:S-q}})}return{assetChanges:M,block:x,results:T}}const Ct="0x6492649264926492649264926492649264926492649264926492649264926492";function as(e){if(s.slice(e,-32)!==Ct)throw new us(e)}function is(e){const{data:t,signature:r,to:n}=e;return s.concat(Ce(yt("address, bytes, bytes"),[n,t,r]),Ct)}function cs(e){try{return as(e),!0}catch{return!1}}class us extends s.BaseError{constructor(t){super(`Value \`${t}\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SignatureErc6492.InvalidWrappedSignatureError"})}}function ds({r:e,s:t,to:r="hex",v:n,yParity:o}){const a=(()=>{if(o===0||o===1)return o;if(n&&(n===27n||n===28n||n>=35n))return n%2n===0n?1:0;throw new Error("Invalid `v` or `yParity` value")})(),i=`0x${new $t.secp256k1.Signature(c.hexToBigInt(e),c.hexToBigInt(t)).toCompactHex()}${a===0?"1b":"1c"}`;return r==="hex"?i:c.hexToBytes(i)}async function ae(e,t){const{address:r,chain:n=e.chain,hash:o,erc6492VerifierAddress:a=t.universalSignatureVerifierAddress??n?.contracts?.erc6492Verifier?.address,multicallAddress:i=t.multicallAddress??n?.contracts?.multicall3?.address,mode:u="auto"}=t;if(n?.verifyHash)return await n.verifyHash(e,t);const d=(()=>{const l=t.signature;return c.isHex(l)?l:typeof l=="object"&&"r"in l&&"s"in l?ds(l):c.bytesToHex(l)})();try{if(u==="eoa")try{if(s.isAddressEqual(c.getAddress(r),await s.recoverAddress({hash:o,signature:d})))return!0}catch{}return Mn(d)?await fs(e,{...t,multicallAddress:i,signature:d}):await ls(e,{...t,verifierAddress:a,signature:d})}catch(l){if(u!=="eoa")try{if(s.isAddressEqual(c.getAddress(r),await s.recoverAddress({hash:o,signature:d})))return!0}catch{}if(l instanceof L)return!1;throw l}}async function fs(e,t){const{address:r,blockNumber:n,blockTag:o,hash:a,multicallAddress:i}=t,{authorization:u,data:d,signature:l,to:f}=Ln(t.signature);if(await re(e,{address:r,blockNumber:n,blockTag:o})===c.concatHex(["0xef0100",u.address]))return await hs(e,{address:r,blockNumber:n,blockTag:o,hash:a,signature:l});const m={address:u.address,chainId:Number(u.chainId),nonce:Number(u.nonce),r:c.numberToHex(u.r,{size:32}),s:c.numberToHex(u.s,{size:32}),yParity:u.yParity};if(!await kr({address:r,authorization:m}))throw new L;const g=await s.getAction(e,s.readContract,"readContract")({...i?{address:i}:{code:s.multicall3Bytecode},authorizationList:[m],abi:s.multicall3Abi,blockNumber:n,blockTag:"pending",functionName:"aggregate3",args:[[...d?[{allowFailure:!0,target:f??r,callData:d}]:[],{allowFailure:!0,target:r,callData:s.encodeFunctionData({abi:s.erc1271Abi,functionName:"isValidSignature",args:[a,l]})}]]});if(g[g.length-1]?.returnData?.startsWith("0x1626ba7e"))return!0;throw new L}async function ls(e,t){const{address:r,factory:n,factoryData:o,hash:a,signature:i,verifierAddress:u,...d}=t,l=await(async()=>!n&&!o||cs(i)?i:is({data:o,signature:i,to:n}))(),f=u?{to:u,data:s.encodeFunctionData({abi:s.erc6492SignatureValidatorAbi,functionName:"isValidSig",args:[r,a,l]}),...d}:{data:s.encodeDeployData({abi:s.erc6492SignatureValidatorAbi,args:[r,a,l],bytecode:s.erc6492SignatureValidatorByteCode}),...d},{data:p}=await s.getAction(e,s.call,"call")(f).catch(m=>{throw m instanceof c.CallExecutionError?new L:m});if(c.hexToBool(p??"0x0"))return!0;throw new L}async function hs(e,t){const{address:r,blockNumber:n,blockTag:o,hash:a,signature:i}=t;if((await s.getAction(e,s.readContract,"readContract")({address:r,abi:s.erc1271Abi,args:[a,i],blockNumber:n,blockTag:o,functionName:"isValidSignature"}).catch(d=>{throw d instanceof c.ContractFunctionExecutionError?new L:d})).startsWith("0x1626ba7e"))return!0;throw new L}class L extends Error{}async function ps(e,{address:t,message:r,factory:n,factoryData:o,signature:a,...i}){const u=it(r);return s.getAction(e,ae,"verifyHash")({address:t,factory:n,factoryData:o,hash:u,signature:a,...i})}async function ms(e,t){const{address:r,factory:n,factoryData:o,signature:a,message:i,primaryType:u,types:d,domain:l,...f}=t,p=Vr({message:i,primaryType:u,types:d,domain:l});return s.getAction(e,ae,"verifyHash")({address:r,factory:n,factoryData:o,hash:p,signature:a,...f})}function It(e,{emitOnBegin:t=!1,emitMissed:r=!1,onBlockNumber:n,onError:o,poll:a,pollingInterval:i=e.pollingInterval}){const u=typeof a<"u"?a:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc"));let d;return u?(()=>{const p=c.stringify(["watchBlockNumber",e.uid,t,r,i]);return s.observe(p,{onBlockNumber:n,onError:o},m=>s.poll(async()=>{try{const h=await s.getAction(e,s.getBlockNumber,"getBlockNumber")({cacheTime:0});if(d!==void 0){if(h===d)return;if(h-d>1&&r)for(let g=d+1n;g<h;g++)m.onBlockNumber(g,d),d=g}(d===void 0||h>d)&&(m.onBlockNumber(h,d),d=h)}catch(h){m.onError?.(h)}},{emitOnBegin:t,interval:i}))})():(()=>{const p=c.stringify(["watchBlockNumber",e.uid,t,r]);return s.observe(p,{onBlockNumber:n,onError:o},m=>{let h=!0,g=()=>h=!1;return(async()=>{try{const b=(()=>{if(e.transport.type==="fallback"){const w=e.transport.transports.find(E=>E.config.type==="webSocket"||E.config.type==="ipc");return w?w.value:e.transport}return e.transport})(),{unsubscribe:y}=await b.subscribe({params:["newHeads"],onData(w){if(!h)return;const E=c.hexToBigInt(w.result?.number);m.onBlockNumber(E,d),d=E},onError(w){m.onError?.(w)}});g=y,h||g()}catch(b){o?.(b)}})(),()=>g()})})()}async function Bt(e,t){const{checkReplacement:r=!0,confirmations:n=1,hash:o,onReplaced:a,retryCount:i=6,retryDelay:u=({count:C})=>~~(1<<C)*200,timeout:d=18e4}=t,l=c.stringify(["waitForTransactionReceipt",e.uid,o]),f=t.pollingInterval?t.pollingInterval:e.chain?.experimental_preconfirmationTime?e.chain.experimental_preconfirmationTime:e.pollingInterval;let p,m,h,g=!1,b,y;const{promise:w,resolve:E,reject:v}=s.withResolvers(),A=d?setTimeout(()=>{y?.(),b?.(),v(new c.WaitForTransactionReceiptTimeoutError({hash:o}))},d):void 0;return b=s.observe(l,{onReplaced:a,resolve:E,reject:v},async C=>{if(h=await s.getAction(e,ee,"getTransactionReceipt")({hash:o}).catch(()=>{}),h&&n<=1){clearTimeout(A),C.resolve(h),b?.();return}y=s.getAction(e,It,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:f,async onBlockNumber(x){const T=B=>{clearTimeout(A),y?.(),B(),b?.()};let I=x;if(!g)try{if(h){if(n>1&&(!h.blockNumber||I-h.blockNumber+1n<n))return;T(()=>C.resolve(h));return}if(r&&!p&&(g=!0,await te(async()=>{p=await s.getAction(e,ke,"getTransaction")({hash:o}),p.blockNumber&&(I=p.blockNumber)},{delay:u,retryCount:i}),g=!1),h=await s.getAction(e,ee,"getTransactionReceipt")({hash:o}),n>1&&(!h.blockNumber||I-h.blockNumber+1n<n))return;T(()=>C.resolve(h))}catch(B){if(B instanceof c.TransactionNotFoundError||B instanceof c.TransactionReceiptNotFoundError){if(!p){g=!1;return}try{m=p,g=!0;const P=await te(()=>s.getAction(e,s.getBlock,"getBlock")({blockNumber:I,includeTransactions:!0}),{delay:u,retryCount:i,shouldRetry:({error:F})=>F instanceof s.BlockNotFoundError});g=!1;const k=P.transactions.find(({from:F,nonce:z})=>F===m.from&&z===m.nonce);if(!k||(h=await s.getAction(e,ee,"getTransactionReceipt")({hash:k.hash}),n>1&&(!h.blockNumber||I-h.blockNumber+1n<n)))return;let N="replaced";k.to===m.to&&k.value===m.value&&k.input===m.input?N="repriced":k.from===k.to&&k.value===0n&&(N="cancelled"),T(()=>{C.onReplaced?.({reason:N,replacedTransaction:m,transaction:k,transactionReceipt:h}),C.resolve(h)})}catch(P){T(()=>C.reject(P))}}else T(()=>C.reject(B))}}})}),w}function gs(e,{blockTag:t=e.experimental_blockTag??"latest",emitMissed:r=!1,emitOnBegin:n=!1,onBlock:o,onError:a,includeTransactions:i,poll:u,pollingInterval:d=e.pollingInterval}){const l=typeof u<"u"?u:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc")),f=i??!1;let p;return l?(()=>{const g=c.stringify(["watchBlocks",e.uid,t,r,n,f,d]);return s.observe(g,{onBlock:o,onError:a},b=>s.poll(async()=>{try{const y=await s.getAction(e,s.getBlock,"getBlock")({blockTag:t,includeTransactions:f});if(y.number!==null&&p?.number!=null){if(y.number===p.number)return;if(y.number-p.number>1&&r)for(let w=p?.number+1n;w<y.number;w++){const E=await s.getAction(e,s.getBlock,"getBlock")({blockNumber:w,includeTransactions:f});b.onBlock(E,p),p=E}}(p?.number==null||t==="pending"&&y?.number==null||y.number!==null&&y.number>p.number)&&(b.onBlock(y,p),p=y)}catch(y){b.onError?.(y)}},{emitOnBegin:n,interval:d}))})():(()=>{let g=!0,b=!0,y=()=>g=!1;return(async()=>{try{n&&s.getAction(e,s.getBlock,"getBlock")({blockTag:t,includeTransactions:f}).then(v=>{g&&b&&(o(v,void 0),b=!1)}).catch(a);const w=(()=>{if(e.transport.type==="fallback"){const v=e.transport.transports.find(A=>A.config.type==="webSocket"||A.config.type==="ipc");return v?v.value:e.transport}return e.transport})(),{unsubscribe:E}=await w.subscribe({params:["newHeads"],async onData(v){if(!g)return;const A=await s.getAction(e,s.getBlock,"getBlock")({blockNumber:v.result?.number,includeTransactions:f}).catch(()=>{});g&&(o(A,p),b=!1,p=A)},onError(v){a?.(v)}});y=E,g||y()}catch(w){a?.(w)}})(),()=>y()})()}function ys(e,{address:t,args:r,batch:n=!0,event:o,events:a,fromBlock:i,onError:u,onLogs:d,poll:l,pollingInterval:f=e.pollingInterval,strict:p}){const m=typeof l<"u"?l:typeof i=="bigint"?!0:!(e.transport.type==="webSocket"||e.transport.type==="ipc"||e.transport.type==="fallback"&&(e.transport.transports[0].config.type==="webSocket"||e.transport.transports[0].config.type==="ipc")),h=p??!1;return m?(()=>{const y=c.stringify(["watchEvent",t,r,n,e.uid,o,f,i]);return s.observe(y,{onLogs:d,onError:u},w=>{let E;i!==void 0&&(E=i-1n);let v,A=!1;const C=s.poll(async()=>{if(!A){try{v=await s.getAction(e,ot,"createEventFilter")({address:t,args:r,event:o,events:a,strict:h,fromBlock:i})}catch{}A=!0;return}try{let x;if(v)x=await s.getAction(e,s.getFilterChanges,"getFilterChanges")({filter:v});else{const T=await s.getAction(e,s.getBlockNumber,"getBlockNumber")({});E&&E!==T?x=await s.getAction(e,s.getLogs,"getLogs")({address:t,args:r,event:o,events:a,fromBlock:E+1n,toBlock:T}):x=[],E=T}if(x.length===0)return;if(n)w.onLogs(x);else for(const T of x)w.onLogs([T])}catch(x){v&&x instanceof s.InvalidInputRpcError&&(A=!1),w.onError?.(x)}},{emitOnBegin:!0,interval:f});return async()=>{v&&await s.getAction(e,s.uninstallFilter,"uninstallFilter")({filter:v}),C()}})})():(()=>{let y=!0,w=()=>y=!1;return(async()=>{try{const E=(()=>{if(e.transport.type==="fallback"){const x=e.transport.transports.find(T=>T.config.type==="webSocket"||T.config.type==="ipc");return x?x.value:e.transport}return e.transport})(),v=a??(o?[o]:void 0);let A=[];v&&(A=[v.flatMap(T=>s.encodeEventTopics({abi:[T],eventName:T.name,args:r}))],o&&(A=A[0]));const{unsubscribe:C}=await E.subscribe({params:["logs",{address:t,topics:A}],onData(x){if(!y)return;const T=x.result;try{const{eventName:I,args:B}=s.decodeEventLog({abi:v??[],data:T.data,topics:T.topics,strict:h}),P=c.formatLog(T,{args:B,eventName:I});d([P])}catch(I){let B,P;if(I instanceof c.DecodeLogDataMismatch||I instanceof c.DecodeLogTopicsMismatch){if(p)return;B=I.abiItem.name,P=I.abiItem.inputs?.some(N=>!("name"in N&&N.name))}const k=c.formatLog(T,{args:P?[]:{},eventName:B});d([k])}},onError(x){u?.(x)}});w=C,y||w()}catch(E){u?.(E)}})(),()=>w()})()}function bs(e,{batch:t=!0,onError:r,onTransactions:n,poll:o,pollingInterval:a=e.pollingInterval}){return(typeof o<"u"?o:e.transport.type!=="webSocket"&&e.transport.type!=="ipc")?(()=>{const l=c.stringify(["watchPendingTransactions",e.uid,t,a]);return s.observe(l,{onTransactions:n,onError:r},f=>{let p;const m=s.poll(async()=>{try{if(!p)try{p=await s.getAction(e,at,"createPendingTransactionFilter")({});return}catch(g){throw m(),g}const h=await s.getAction(e,s.getFilterChanges,"getFilterChanges")({filter:p});if(h.length===0)return;if(t)f.onTransactions(h);else for(const g of h)f.onTransactions([g])}catch(h){f.onError?.(h)}},{emitOnBegin:!0,interval:a});return async()=>{p&&await s.getAction(e,s.uninstallFilter,"uninstallFilter")({filter:p}),m()}})})():(()=>{let l=!0,f=()=>l=!1;return(async()=>{try{const{unsubscribe:p}=await e.transport.subscribe({params:["newPendingTransactions"],onData(m){if(!l)return;const h=m.result;n([h])},onError(m){r?.(m)}});f=p,l||f()}catch(p){r?.(p)}})(),()=>f()})()}function ws(e){const{scheme:t,statement:r,...n}=e.match(vs)?.groups??{},{chainId:o,expirationTime:a,issuedAt:i,notBefore:u,requestId:d,...l}=e.match(Es)?.groups??{},f=e.split("Resources:")[1]?.split(`
|
|
4
|
+
- `).slice(1);return{...n,...l,...o?{chainId:Number(o)}:{},...a?{expirationTime:new Date(a)}:{},...i?{issuedAt:new Date(i)}:{},...u?{notBefore:new Date(u)}:{},...d?{requestId:d}:{},...f?{resources:f}:{},...t?{scheme:t}:{},...r?{statement:r}:{}}}const vs=/^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\/\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\n)(?<address>0x[a-fA-F0-9]{40})\n\n(?:(?<statement>.*)\n\n)?/,Es=/(?:URI: (?<uri>.+))\n(?:Version: (?<version>.+))\n(?:Chain ID: (?<chainId>\d+))\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\n(?:Issued At: (?<issuedAt>.+))(?:\nExpiration Time: (?<expirationTime>.+))?(?:\nNot Before: (?<notBefore>.+))?(?:\nRequest ID: (?<requestId>.+))?/;function As(e){const{address:t,domain:r,message:n,nonce:o,scheme:a,time:i=new Date}=e;if(r&&n.domain!==r||o&&n.nonce!==o||a&&n.scheme!==a||n.expirationTime&&i>=n.expirationTime||n.notBefore&&i<n.notBefore)return!1;try{if(!n.address||!c.isAddress(n.address,{strict:!1})||t&&!s.isAddressEqual(n.address,t))return!1}catch{return!1}return!0}async function Ts(e,t){const{address:r,domain:n,message:o,nonce:a,scheme:i,signature:u,time:d=new Date,...l}=t,f=ws(o);if(!f.address||!As({address:r,domain:n,message:f,nonce:a,scheme:i,time:d}))return!1;const m=it(o);return ae(e,{address:f.address,hash:m,signature:u,...l})}async function Ne(e,{serializedTransaction:t,throwOnReceiptRevert:r,timeout:n}){const o=await e.request({method:"eth_sendRawTransactionSync",params:n?[t,n]:[t]},{retryCount:0}),i=(e.chain?.formatters?.transactionReceipt?.format||c.formatTransactionReceipt)(o);if(i.status==="reverted"&&r)throw new c.TransactionReceiptRevertedError({receipt:i});return i}function xs(e){return{call:t=>s.call(e,t),createAccessList:t=>st(e,t),createBlockFilter:()=>br(e),createContractEventFilter:t=>s.createContractEventFilter(e,t),createEventFilter:t=>ot(e,t),createPendingTransactionFilter:()=>at(e),estimateContractGas:t=>s.estimateContractGas(e,t),estimateGas:t=>s.estimateGas(e,t),getBalance:t=>wr(e,t),getBlobBaseFee:()=>vr(e),getBlock:t=>s.getBlock(e,t),getBlockNumber:t=>s.getBlockNumber(e,t),getBlockReceipts:t=>Er(e,t),getBlockTransactionCount:t=>Ar(e,t),getBytecode:t=>re(e,t),getChainId:()=>s.getChainId(e),getCode:t=>re(e,t),getContractEvents:t=>s.getContractEvents(e,t),getDelegation:t=>Tr(e,t),getEip712Domain:t=>Rr(e,t),getEnsAddress:t=>tr(e,t),getEnsAvatar:t=>mr(e,t),getEnsName:t=>gr(e,t),getEnsResolver:t=>yr(e,t),getEnsText:t=>nt(e,t),getFeeHistory:t=>Br(e,t),estimateFeesPerGas:t=>s.estimateFeesPerGas(e,t),getFilterChanges:t=>s.getFilterChanges(e,t),getFilterLogs:t=>Pr(e,t),getGasPrice:()=>s.getGasPrice(e),getLogs:t=>s.getLogs(e,t),getProof:t=>Vn(e,t),estimateMaxPriorityFeePerGas:t=>s.estimateMaxPriorityFeePerGas(e,t),fillTransaction:t=>s.fillTransaction(e,t),getStorageAt:t=>Gn(e,t),getTransaction:t=>ke(e,t),getTransactionConfirmations:t=>Zn(e,t),getTransactionCount:t=>s.getTransactionCount(e,t),getTransactionReceipt:t=>ee(e,t),multicall:t=>Jn(e,t),prepareTransactionRequest:t=>s.prepareTransactionRequest(e,t),readContract:t=>s.readContract(e,t),sendRawTransaction:t=>s.sendRawTransaction(e,t),sendRawTransactionSync:t=>Ne(e,t),simulate:t=>me(e,t),simulateBlocks:t=>me(e,t),simulateCalls:t=>os(e,t),simulateContract:t=>s.simulateContract(e,t),verifyHash:t=>ae(e,t),verifyMessage:t=>ps(e,t),verifySiweMessage:t=>Ts(e,t),verifyTypedData:t=>ms(e,t),uninstallFilter:t=>s.uninstallFilter(e,t),waitForTransactionReceipt:t=>Bt(e,t),watchBlocks:t=>gs(e,t),watchBlockNumber:t=>It(e,t),watchContractEvent:t=>s.watchContractEvent(e,t),watchEvent:t=>ys(e,t),watchPendingTransactions:t=>bs(e,t)}}function Rs(e){const{key:t="public",name:r="Public Client"}=e;return Xe({...e,key:t,name:r,type:"publicClient"}).extend(xs)}async function Cs(e,{chain:t}){const{id:r,name:n,nativeCurrency:o,rpcUrls:a,blockExplorers:i}=t;await e.request({method:"wallet_addEthereumChain",params:[{chainId:c.numberToHex(r),chainName:n,nativeCurrency:o,rpcUrls:a.default.http,blockExplorerUrls:i?Object.values(i).map(({url:u})=>u):void 0}]},{dedupe:!0,retryCount:0})}function Is(e,t){const{abi:r,args:n,bytecode:o,...a}=t,i=s.encodeDeployData({abi:r,args:n,bytecode:o});return s.sendTransaction(e,{...a,...a.authorizationList?{to:null}:{},data:i})}async function Bs(e){return e.account?.type==="local"?[e.account.address]:(await e.request({method:"eth_accounts"},{dedupe:!0})).map(r=>c.checksumAddress(r))}async function Ps(e,t={}){const{account:r=e.account,chainId:n}=t,o=r?c.parseAccount(r):void 0,a=n?[o?.address,[c.numberToHex(n)]]:[o?.address],i=await e.request({method:"wallet_getCapabilities",params:a}),u={};for(const[d,l]of Object.entries(i)){u[Number(d)]={};for(let[f,p]of Object.entries(l))f==="addSubAccount"&&(f="unstable_addSubAccount"),u[Number(d)][f]=p}return typeof n=="number"?u[n]:u}async function ks(e){return await e.request({method:"wallet_getPermissions"},{dedupe:!0})}async function Pt(e,t){const{account:r=e.account,chainId:n,nonce:o}=t;if(!r)throw new c.AccountNotFoundError({docsPath:"/docs/eip7702/prepareAuthorization"});const a=c.parseAccount(r),i=(()=>{if(t.executor)return t.executor==="self"?t.executor:c.parseAccount(t.executor)})(),u={address:t.contractAddress??t.address,chainId:n,nonce:o};return typeof u.chainId>"u"&&(u.chainId=e.chain?.id??await s.getAction(e,s.getChainId,"getChainId")({})),typeof u.nonce>"u"&&(u.nonce=await s.getAction(e,s.getTransactionCount,"getTransactionCount")({address:a.address,blockTag:"pending"}),(i==="self"||i?.address&&s.isAddressEqual(i.address,a.address))&&(u.nonce+=1)),u}async function Ns(e){return(await e.request({method:"eth_requestAccounts"},{dedupe:!0,retryCount:0})).map(r=>c.getAddress(r))}async function Ss(e,t){return e.request({method:"wallet_requestPermissions",params:[t]},{retryCount:0})}async function zs(e,t){const{chain:r=e.chain}=t,n=t.timeout??Math.max((r?.blockTime??0)*3,5e3),o=await s.getAction(e,Je,"sendCalls")(t);return await s.getAction(e,Ke,"waitForCallsStatus")({...t,id:o.id,timeout:n})}const ue=new c.LruMap(128);async function kt(e,t){const{account:r=e.account,assertChainId:n=!0,chain:o=e.chain,accessList:a,authorizationList:i,blobs:u,data:d,dataSuffix:l=typeof e.dataSuffix=="string"?e.dataSuffix:e.dataSuffix?.value,gas:f,gasPrice:p,maxFeePerBlobGas:m,maxFeePerGas:h,maxPriorityFeePerGas:g,nonce:b,pollingInterval:y,throwOnReceiptRevert:w,type:E,value:v,...A}=t,C=t.timeout??Math.max((o?.blockTime??0)*3,5e3);if(typeof r>"u")throw new c.AccountNotFoundError({docsPath:"/docs/actions/wallet/sendTransactionSync"});const x=r?c.parseAccount(r):null;let T;try{c.assertRequest(t);const I=await(async()=>{if(t.to)return t.to;if(t.to!==null&&i&&i.length>0)return await s.recoverAuthorizationAddress({authorization:i[0]}).catch(()=>{throw new c.BaseError("`to` is required. Could not infer from `authorizationList`.")})})();if(x?.type==="json-rpc"||x===null){let B;o!==null&&(B=await s.getAction(e,s.getChainId,"getChainId")({}),n&&s.assertCurrentChain({currentChainId:B,chain:o}));const P=e.chain?.formatters?.transactionRequest?.format,N=(P||c.formatTransactionRequest)({...c.extract(A,{format:P}),accessList:a,account:x,authorizationList:i,blobs:u,chainId:B,data:l?c.concat([d??"0x",l]):d,gas:f,gasPrice:p,maxFeePerBlobGas:m,maxFeePerGas:h,maxPriorityFeePerGas:g,nonce:b,to:I,type:E,value:v},"sendTransaction"),F=ue.get(e.uid),z=F?"wallet_sendTransaction":"eth_sendTransaction",_=await(async()=>{try{return await e.request({method:z,params:[N]},{retryCount:0})}catch(M){if(F===!1)throw M;const R=M;if(R.name==="InvalidInputRpcError"||R.name==="InvalidParamsRpcError"||R.name==="MethodNotFoundRpcError"||R.name==="MethodNotSupportedRpcError")return await e.request({method:"wallet_sendTransaction",params:[N]},{retryCount:0}).then(S=>(ue.set(e.uid,!0),S)).catch(S=>{const q=S;throw q.name==="MethodNotFoundRpcError"||q.name==="MethodNotSupportedRpcError"?(ue.set(e.uid,!1),R):q});throw R}})(),O=await s.getAction(e,Bt,"waitForTransactionReceipt")({checkReplacement:!1,hash:_,pollingInterval:y,timeout:C});if(w&&O.status==="reverted")throw new c.TransactionReceiptRevertedError({receipt:O});return O}if(x?.type==="local"){if(x.nonceManager&&typeof b>"u"){const N=A.chainId,F=await(async()=>typeof N=="number"?N:o?o.id:s.getAction(e,s.getChainId,"getChainId")({}))();T={address:x.address,chainId:F}}const B=await s.getAction(e,s.prepareTransactionRequest,"prepareTransactionRequest")({account:x,accessList:a,authorizationList:i,blobs:u,chain:o,data:l?c.concat([d??"0x",l]):d,gas:f,gasPrice:p,maxFeePerBlobGas:m,maxFeePerGas:h,maxPriorityFeePerGas:g,nonce:b,nonceManager:x.nonceManager,parameters:[...s.defaultParameters,"sidecars"],type:E,value:v,...A,to:I}),P=o?.serializers?.transaction,k=await x.signTransaction(B,{serializer:P});return await s.getAction(e,Ne,"sendRawTransactionSync")({serializedTransaction:k,throwOnReceiptRevert:w,timeout:t.timeout})}throw x?.type==="smart"?new c.AccountTypeNotSupportedError({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"}):new c.AccountTypeNotSupportedError({docsPath:"/docs/actions/wallet/sendTransactionSync",type:x?.type})}catch(I){throw I instanceof c.AccountTypeNotSupportedError?I:(T&&!(I instanceof c.TransactionReceiptRevertedError)&&x?.nonceManager?.reset(T),s.getTransactionError(I,{...t,account:x,chain:t.chain||void 0}))}}async function Fs(e,t){const{id:r}=t;await e.request({method:"wallet_showCallsStatus",params:[r]})}async function $s(e,t){const{account:r=e.account}=t;if(!r)throw new c.AccountNotFoundError({docsPath:"/docs/eip7702/signAuthorization"});const n=c.parseAccount(r);if(!n.signAuthorization)throw new c.AccountTypeNotSupportedError({docsPath:"/docs/eip7702/signAuthorization",metaMessages:["The `signAuthorization` Action does not support JSON-RPC Accounts."],type:n.type});const o=await Pt(e,t);return n.signAuthorization(o)}async function _s(e,{account:t=e.account,message:r}){if(!t)throw new c.AccountNotFoundError({docsPath:"/docs/actions/wallet/signMessage"});const n=c.parseAccount(t);if(n.signMessage)return n.signMessage({message:r});const o=typeof r=="string"?c.stringToHex(r):r.raw instanceof Uint8Array?c.toHex(r.raw):r.raw;return e.request({method:"personal_sign",params:[o,n.address]},{retryCount:0})}async function qs(e,t){const{account:r=e.account,chain:n=e.chain,...o}=t;if(!r)throw new c.AccountNotFoundError({docsPath:"/docs/actions/wallet/signTransaction"});const a=c.parseAccount(r);c.assertRequest({account:a,...t});const i=await s.getAction(e,s.getChainId,"getChainId")({});n!==null&&s.assertCurrentChain({currentChainId:i,chain:n});const d=(n?.formatters||e.chain?.formatters)?.transactionRequest?.format||c.formatTransactionRequest;return a.signTransaction?a.signTransaction({...o,account:a,chainId:i},{serializer:e.chain?.serializers?.transaction}):await e.request({method:"eth_signTransaction",params:[{...d({...o,account:a},"signTransaction"),chainId:c.numberToHex(i),from:a.address}]},{retryCount:0})}async function Us(e,t){const{account:r=e.account,domain:n,message:o,primaryType:a}=t;if(!r)throw new c.AccountNotFoundError({docsPath:"/docs/actions/wallet/signTypedData"});const i=c.parseAccount(r),u={EIP712Domain:ut({domain:n}),...t.types};if(ct({domain:n,message:o,primaryType:a,types:u}),i.signTypedData)return i.signTypedData({domain:n,message:o,primaryType:a,types:u});const d=jr({domain:n,message:o,primaryType:a,types:u});return e.request({method:"eth_signTypedData_v4",params:[i.address,d]},{retryCount:0})}async function Ds(e,{id:t}){await e.request({method:"wallet_switchEthereumChain",params:[{chainId:c.numberToHex(t)}]},{retryCount:0})}async function Os(e,t){return await e.request({method:"wallet_watchAsset",params:t},{retryCount:0})}async function Ls(e,t){return s.writeContract.internal(e,kt,"sendTransactionSync",t)}function Ms(e){return{addChain:t=>Cs(e,t),deployContract:t=>Is(e,t),fillTransaction:t=>s.fillTransaction(e,t),getAddresses:()=>Bs(e),getCallsStatus:t=>Ye(e,t),getCapabilities:t=>Ps(e,t),getChainId:()=>s.getChainId(e),getPermissions:()=>ks(e),prepareAuthorization:t=>Pt(e,t),prepareTransactionRequest:t=>s.prepareTransactionRequest(e,t),requestAddresses:()=>Ns(e),requestPermissions:t=>Ss(e,t),sendCalls:t=>Je(e,t),sendCallsSync:t=>zs(e,t),sendRawTransaction:t=>s.sendRawTransaction(e,t),sendRawTransactionSync:t=>Ne(e,t),sendTransaction:t=>s.sendTransaction(e,t),sendTransactionSync:t=>kt(e,t),showCallsStatus:t=>Fs(e,t),signAuthorization:t=>$s(e,t),signMessage:t=>_s(e,t),signTransaction:t=>qs(e,t),signTypedData:t=>Us(e,t),switchChain:t=>Ds(e,t),waitForCallsStatus:t=>Ke(e,t),watchAsset:t=>Os(e,t),writeContract:t=>s.writeContract(e,t),writeContractSync:t=>Ls(e,t)}}function Hs(e){const{key:t="wallet",name:r="Wallet Client",transport:n}=e;return Xe({...e,key:t,name:r,transport:n,type:"walletClient"}).extend(Ms)}function Nt({key:e,methods:t,name:r,request:n,retryCount:o=3,retryDelay:a=150,timeout:i,type:u},d){const l=Qe();return{config:{key:e,methods:t,name:r,request:n,retryCount:o,retryDelay:a,timeout:i,type:u},request:Sr(n,{methods:t,retryCount:o,retryDelay:a,uid:l}),value:d}}class js extends c.BaseError{constructor(){super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",{docsPath:"/docs/clients/intro",name:"UrlRequiredError"})}}let Ws=0;const He=new WeakMap;function Vs(e){if(!e)return"default";const t=He.get(e);if(t!==void 0)return t;const r=Ws++;return He.set(e,r),r}function Gs(e,t={}){const{batch:r,fetchFn:n,fetchOptions:o,key:a="http",methods:i,name:u="HTTP JSON-RPC",onFetchRequest:d,onFetchResponse:l,retryDelay:f,raw:p}=t;return({chain:m,retryCount:h,timeout:g})=>{const{batchSize:b=1e3,wait:y=0}=typeof r=="object"?r:{},w=t.retryCount??h,E=g??t.timeout??1e4,v=e||m?.rpcUrls.default.http[0];if(!v)throw new js;const A=qr(v,{fetchFn:n,fetchOptions:o,onRequest:d,onResponse:l,timeout:E});return Nt({key:a,methods:i,name:u,async request({method:C,params:x},T){const I={method:C,params:x},B=T?.signal?{signal:T.signal}:void 0,{schedule:P}=s.createBatchScheduler({id:`${v}.${Vs(T?.signal)}`,wait:y,shouldSplitBatch(z){return z.length>b},fn:z=>A.request({body:z,fetchOptions:B}),sort:(z,_)=>z.id-_.id}),k=async z=>r?P(z):[await A.request({body:z,fetchOptions:B})],[{error:N,result:F}]=await k(I);if(p)return{error:N,result:F};if(N)throw new s.RpcRequestError({body:I,error:N,url:v});return F},retryCount:w,retryDelay:f,timeout:E,type:"http"},{fetchOptions:o,url:v})}}exports.createPublicClient=Rs;exports.createTransport=Nt;exports.createWalletClient=Hs;exports.http=Gs;
|
|
5
|
+
//# sourceMappingURL=http-BtVgpo6v.cjs.map
|