@wireio/stake 0.6.0 → 0.6.69
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/README.md +185 -243
- package/lib/stake.browser.js +44095 -8541
- package/lib/stake.browser.js.map +1 -1
- package/lib/stake.d.ts +11351 -1479
- package/lib/stake.js +44672 -9038
- package/lib/stake.js.map +1 -1
- package/lib/stake.m.js +44095 -8541
- package/lib/stake.m.js.map +1 -1
- package/package.json +4 -3
- package/src/assets/ethereum/hoodi/WNS/BucketWNS.sol/BucketWNS.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/BucketWNS.sol/BucketWNS.json +699 -0
- package/src/assets/ethereum/hoodi/WNS/Challenge.sol/Challenge.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/Challenge.sol/Challenge.json +3139 -0
- package/src/assets/ethereum/hoodi/WNS/ChallengeLib.sol/ChallengeLib.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/ChallengeLib.sol/ChallengeLib.json +106 -0
- package/src/assets/ethereum/hoodi/WNS/Errors.sol/WNSErrs.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/Errors.sol/WNSErrs.json +180 -0
- package/src/assets/ethereum/hoodi/WNS/LiqWNS.sol/LiqWNS.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/LiqWNS.sol/LiqWNS.json +470 -0
- package/src/assets/ethereum/hoodi/WNS/SChain.sol/SChain.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/SChain.sol/SChain.json +1983 -0
- package/src/assets/ethereum/hoodi/WNS/UTXO.sol/UTXO.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/UTXO.sol/UTXO.json +1231 -0
- package/src/assets/ethereum/hoodi/WNS/UTXOio.sol/UTXOio.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/UTXOio.sol/UTXOio.json +1524 -0
- package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/IBucketWNS.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/IBucketWNS.json +119 -0
- package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/IChallenge.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/IChallenge.json +374 -0
- package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/ISChain.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/ISChain.json +865 -0
- package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/IUTXO.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/IUTXO.json +524 -0
- package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/WNSCommon.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/WNSCommon.json +10 -0
- package/src/assets/ethereum/hoodi/WNS/WithdrawBatch.sol/WithdrawBatch.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/WNS/WithdrawBatch.sol/WithdrawBatch.json +1232 -0
- package/src/assets/ethereum/hoodi/common/Base58.sol/Base58.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/common/iodata.sol/iodata.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/common/iodata_util.sol/iodata_util.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/common/sysio_data.sol/sysio_data.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/common/sysio_name.sol/sysio_name.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/common/sysio_read.sol/sysio_read.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/common/sysio_write.sol/sysio_write.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/DepositManagerV2.json +985 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IAccounting.json +182 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
- package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IStakingModule.json +1 -1
- package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
- package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/LiqEthCommon.json +2 -2
- package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
- package/src/assets/ethereum/hoodi/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
- package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthManaged.sol/LiqEthManaged.json +2 -2
- package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
- package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
- package/src/assets/ethereum/hoodi/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
- package/src/assets/ethereum/{ABI → hoodi}/liqEth/Yield.sol/YieldOracle.json +2 -2
- package/src/assets/ethereum/hoodi/liqEth/accounting.sol/AccountingV2.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/accounting.sol/AccountingV2.json +629 -0
- package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
- package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.json +1779 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
- package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/DepositManager.sol/DepositManager.json +3 -3
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
- package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/LiqEthCommon.sol/IAccounting.json +1 -1
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
- package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/LiqEthCommon.sol/IRewardsERC20.json +1 -1
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
- package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/LiqEthCommon.sol/IRewardsERC20Pausable.json +1 -1
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
- package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/RewardsERC20.sol/RewardsERC20Upgradeable.json +1 -1
- package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
- package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +1 -1
- package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.json +548 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.json +1772 -0
- package/src/assets/ethereum/hoodi/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
- package/src/assets/ethereum/{ABI → hoodi}/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +2 -2
- package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
- package/src/assets/ethereum/{ABI → hoodi}/liqEth/withdrawalVault.sol/Uint64BE.json +2 -2
- package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
- package/src/assets/ethereum/{ABI → hoodi}/liqEth/withdrawalVault.sol/WithdrawalVault.json +2 -2
- package/src/assets/ethereum/hoodi/outpost/BAR.sol/BAR.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/BAR.sol/BAR.json +1111 -0
- package/src/assets/ethereum/hoodi/outpost/Depositor.sol/Depositor.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/Depositor.sol/Depositor.json +1590 -0
- package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +274 -0
- package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawFailedCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawFailedCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/IDepositorBridgeHooks.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/IDepositorBridgeHooks.json +29 -0
- package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/LiqEthBridge.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/LiqEthBridge.json +1033 -0
- package/src/assets/ethereum/hoodi/outpost/MockAggregator.sol/MockAggregator.json +97 -0
- package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.json +1055 -0
- package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.json +81 -0
- package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.json +330 -0
- package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.json +29 -0
- package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.json +41 -0
- package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.json +287 -0
- package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.json +294 -0
- package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +415 -0
- package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +399 -0
- package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.json +245 -0
- package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.json +1204 -0
- package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.json +312 -0
- package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.json +324 -0
- package/src/assets/ethereum/hoodi/outpost/OperatorRegistry.sol/OperatorRegistry.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OperatorRegistry.sol/OperatorRegistry.json +1068 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.json +211 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.json +229 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManager.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManager.json +751 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +1432 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.json +130 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +141 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.json +213 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostReserve.sol/OutpostReserve.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/OutpostReserve.sol/OutpostReserve.json +888 -0
- package/src/assets/ethereum/hoodi/outpost/Pool.sol/Pool.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/Pool.sol/Pool.json +659 -0
- package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/Pretoken.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/Pretoken.json +1393 -0
- package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.json +1738 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.json +1437 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.json +10 -0
- package/src/assets/ethereum/hoodi/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.json +472 -0
- package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.json +330 -0
- package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.json +449 -0
- package/src/assets/ethereum/hoodi/token/Eman1155.sol/Eman1155.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/token/Eman1155.sol/Eman1155.json +560 -0
- package/src/assets/ethereum/hoodi/token/Eman20.sol/Eman20.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/token/Eman20.sol/Eman20.json +460 -0
- package/src/assets/ethereum/hoodi/token/Eman721.sol/Eman721.dbg.json +4 -0
- package/src/assets/ethereum/hoodi/token/Eman721.sol/Eman721.json +624 -0
- package/src/assets/ethereum/mainnet/common/Base58.sol/Base58.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/Base58.sol/Base58.json +164 -0
- package/src/assets/ethereum/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +76 -0
- package/src/assets/ethereum/mainnet/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/RestrictedCallers.sol/RestrictedCallers.json +10 -0
- package/src/assets/ethereum/mainnet/common/iodata.sol/iodata.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/iodata.sol/iodata.json +618 -0
- package/src/assets/ethereum/mainnet/common/iodata_util.sol/iodata_util.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/iodata_util.sol/iodata_util.json +40 -0
- package/src/assets/ethereum/mainnet/common/sysio_data.sol/sysio_data.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/sysio_data.sol/sysio_data.json +10 -0
- package/src/assets/ethereum/mainnet/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/sysio_errors.sol/sysio_errors.json +10 -0
- package/src/assets/ethereum/mainnet/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/sysio_merkle.sol/sysio_merkle.json +233 -0
- package/src/assets/ethereum/mainnet/common/sysio_name.sol/sysio_name.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/sysio_name.sol/sysio_name.json +49 -0
- package/src/assets/ethereum/mainnet/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/sysio_pubkey.sol/sysio_pubkey.json +64 -0
- package/src/assets/ethereum/mainnet/common/sysio_read.sol/sysio_read.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/sysio_read.sol/sysio_read.json +1458 -0
- package/src/assets/ethereum/mainnet/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/sysio_tester.sol/SysioTester.json +1532 -0
- package/src/assets/ethereum/mainnet/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/sysio_verify.sol/sysio_verify.json +1525 -0
- package/src/assets/ethereum/mainnet/common/sysio_write.sol/sysio_write.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/common/sysio_write.sol/sysio_write.json +1076 -0
- package/src/assets/ethereum/mainnet/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/BeaconState.sol/BeaconState.json +807 -0
- package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/DepositManagerV2.json +1004 -0
- package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.json +29 -0
- package/src/assets/ethereum/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.json +897 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +1289 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.json +39 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.json +64 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.json +189 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.json +279 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.json +10 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.json +229 -0
- package/src/assets/ethereum/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
- package/src/assets/ethereum/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
- package/src/assets/ethereum/mainnet/liqEth/StakingLib.sol/StakingLib.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/StakingLib.sol/StakingLib.json +89 -0
- package/src/assets/ethereum/mainnet/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/Yield.sol/YieldOracle.json +1376 -0
- package/src/assets/ethereum/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
- package/src/assets/ethereum/mainnet/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/stakingModule.sol/StakingModuleV2.json +1896 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/DepositManager.sol/DepositManager.json +978 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.json +176 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.json +249 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +263 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json +874 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +937 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
- package/src/assets/ethereum/{ABI/liqEth → mainnet/liqEth/v1}/accounting.sol/Accounting.json +3 -3
- package/src/assets/ethereum/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
- package/src/assets/ethereum/mainnet/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
- package/src/assets/ethereum/{ABI/liqEth → mainnet/liqEth/v1}/stakingModule.sol/StakingModule.json +3 -3
- package/src/assets/ethereum/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +973 -0
- package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/Uint64BE.json +10 -0
- package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.json +441 -0
- package/src/assets/ethereum/mainnet/outpost/BAR.sol/BARV2.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/BAR.sol/BARV2.json +1915 -0
- package/src/assets/ethereum/mainnet/outpost/Depositor.sol/DepositorV2.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/Depositor.sol/DepositorV2.json +1845 -0
- package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +122 -0
- package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
- package/src/assets/ethereum/{ABI → mainnet}/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +31 -29
- package/src/assets/ethereum/mainnet/outpost/OPP.sol/OPP.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.json +29 -0
- package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
- package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostErrors.sol/OutpostErrors.json +33 -18
- package/src/assets/ethereum/mainnet/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.json +737 -0
- package/src/assets/ethereum/mainnet/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +29 -0
- package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/Pool.sol/PoolV2.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/Pool.sol/PoolV2.json +943 -0
- package/src/assets/ethereum/mainnet/outpost/Pretoken.sol/PretokenV2.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/Pretoken.sol/PretokenV2.json +1703 -0
- package/src/assets/ethereum/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
- package/src/assets/ethereum/{ABI → mainnet}/outpost/ReceiptNFT.sol/ReceiptNFT.json +33 -18
- package/src/assets/ethereum/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.json +29 -0
- package/src/assets/ethereum/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.json +29 -0
- package/src/assets/ethereum/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +858 -0
- package/src/assets/ethereum/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +30 -0
- package/src/assets/ethereum/mainnet/outpost/v1/BAR.sol/BAR.dbg.json +4 -0
- package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/BAR.sol/BAR.json +34 -19
- package/src/assets/ethereum/mainnet/outpost/v1/Depositor.sol/Depositor.dbg.json +4 -0
- package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/Depositor.sol/Depositor.json +34 -19
- package/src/assets/ethereum/mainnet/outpost/v1/OutpostManager.sol/OutpostManager.dbg.json +4 -0
- package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/OutpostManager.sol/OutpostManager.json +3 -3
- package/src/assets/ethereum/mainnet/outpost/v1/Pool.sol/Pool.dbg.json +4 -0
- package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/Pool.sol/Pool.json +34 -19
- package/src/assets/ethereum/mainnet/outpost/v1/Pretoken.sol/Pretoken.dbg.json +4 -0
- package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/Pretoken.sol/Pretoken.json +34 -19
- package/src/assets/ethereum/mainnet/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/token/ERC1155Token.sol/ERC1155Token.json +472 -0
- package/src/assets/ethereum/mainnet/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/token/ERC20Token.sol/ERC20Token.json +330 -0
- package/src/assets/ethereum/mainnet/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
- package/src/assets/ethereum/mainnet/token/ERC721Token.sol/ERC721Token.json +449 -0
- package/src/assets/solana/devnet/idl/liqsol_core.json +8566 -0
- package/src/assets/solana/{idl → devnet/idl}/liqsol_token.json +34 -0
- package/src/assets/solana/devnet/idl/transfer_hook.json +490 -0
- package/src/assets/solana/{idl → devnet/idl}/validator_leaderboard.json +15 -0
- package/src/assets/solana/devnet/types/liqsol_core.ts +8572 -0
- package/src/assets/solana/{types → devnet/types}/liqsol_token.ts +34 -0
- package/src/assets/solana/devnet/types/transfer_hook.ts +496 -0
- package/src/assets/solana/{types → devnet/types}/validator_leaderboard.ts +15 -0
- package/src/assets/solana/{idl → mainnet/idl}/liqsol_core.json +669 -420
- package/src/assets/solana/mainnet/idl/liqsol_token.json +217 -0
- package/src/assets/solana/mainnet/idl/transfer_hook.json +479 -0
- package/src/assets/solana/mainnet/idl/validator_leaderboard.json +574 -0
- package/src/assets/solana/{types → mainnet/types}/liqsol_core.ts +669 -420
- package/src/assets/solana/mainnet/types/liqsol_token.ts +223 -0
- package/src/assets/solana/mainnet/types/transfer_hook.ts +485 -0
- package/src/assets/solana/mainnet/types/validator_leaderboard.ts +580 -0
- package/src/assets/solana/realdevnet/idl/liqsol_core.json +7112 -0
- package/src/assets/solana/realdevnet/idl/liqsol_token.json +217 -0
- package/src/assets/solana/realdevnet/idl/transfer_hook.json +479 -0
- package/src/assets/solana/realdevnet/idl/validator_leaderboard.json +735 -0
- package/src/assets/solana/realdevnet/types/liqsol_core.ts +7118 -0
- package/src/assets/solana/realdevnet/types/liqsol_token.ts +223 -0
- package/src/assets/solana/realdevnet/types/transfer_hook.ts +485 -0
- package/src/assets/solana/realdevnet/types/validator_leaderboard.ts +741 -0
- package/src/index.ts +2 -2
- package/src/networks/ethereum/clients/convert.client.ts +35 -1
- package/src/networks/ethereum/clients/opp.client.ts +20 -21
- package/src/networks/ethereum/clients/receipt.client.ts +93 -23
- package/src/networks/ethereum/clients/stake.client.ts +192 -20
- package/src/networks/ethereum/clients/validator.client.ts +61 -0
- package/src/networks/ethereum/contract.ts +421 -235
- package/src/networks/ethereum/ethereum.ts +342 -127
- package/src/networks/ethereum/types.ts +41 -13
- package/src/networks/solana/clients/convert.client.ts +341 -0
- package/src/networks/solana/clients/distribution.client.ts +131 -24
- package/src/networks/solana/clients/leaderboard.client.ts +10 -13
- package/src/networks/solana/clients/outpost.client.ts +110 -78
- package/src/networks/solana/clients/token.client.ts +20 -15
- package/src/networks/solana/constants.ts +56 -285
- package/src/networks/solana/program.ts +446 -28
- package/src/networks/solana/solana.ts +817 -404
- package/src/networks/solana/types.ts +41 -15
- package/src/networks/solana/utils.ts +56 -305
- package/src/staker.ts +24 -4
- package/src/types.ts +94 -22
- package/src/assets/ethereum/ABI/common/Base58.sol/Base58.dbg.json +0 -4
- package/src/assets/ethereum/ABI/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +0 -4
- package/src/assets/ethereum/ABI/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +0 -4
- package/src/assets/ethereum/ABI/common/iodata.sol/iodata.dbg.json +0 -4
- package/src/assets/ethereum/ABI/common/iodata_util.sol/iodata_util.dbg.json +0 -4
- package/src/assets/ethereum/ABI/common/sysio_data.sol/sysio_data.dbg.json +0 -4
- package/src/assets/ethereum/ABI/common/sysio_errors.sol/sysio_errors.dbg.json +0 -4
- package/src/assets/ethereum/ABI/common/sysio_merkle.sol/sysio_merkle.dbg.json +0 -4
- package/src/assets/ethereum/ABI/common/sysio_name.sol/sysio_name.dbg.json +0 -4
- package/src/assets/ethereum/ABI/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +0 -4
- package/src/assets/ethereum/ABI/common/sysio_read.sol/sysio_read.dbg.json +0 -4
- package/src/assets/ethereum/ABI/common/sysio_tester.sol/SysioTester.dbg.json +0 -4
- package/src/assets/ethereum/ABI/common/sysio_verify.sol/sysio_verify.dbg.json +0 -4
- package/src/assets/ethereum/ABI/common/sysio_write.sol/sysio_write.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/BeaconState.sol/BeaconState.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.json +0 -1202
- package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +0 -4
- package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/Aggregator.sol/Aggregator.json +0 -82
- package/src/assets/ethereum/ABI/outpost/BAR.sol/BAR.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/Depositor.sol/Depositor.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPP.sol/OPP.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPP.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPInbound.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPSender.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/OPPCommon.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPPErrors.sol/OPPErrors.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPPInbound.sol/OPPInbound.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OPPSender.sol/OPPSender.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OutpostManager.sol/OutpostManager.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/Pool.sol/Pool.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/Pretoken.sol/Pretoken.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +0 -4
- package/src/assets/ethereum/ABI/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +0 -4
- package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.dbg.json +0 -4
- package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.json +0 -472
- package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.dbg.json +0 -4
- package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.json +0 -330
- package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.dbg.json +0 -4
- package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.json +0 -449
- package/src/assets/solana/idl/transfer_hook.json +0 -197
- package/src/assets/solana/types/transfer_hook.ts +0 -203
- package/src/networks/solana/clients/deposit.client.ts +0 -292
- /package/src/assets/ethereum/{ABI → hoodi}/common/Base58.sol/Base58.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/common/RestrictedCallers.sol/RestrictedCallers.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/common/iodata.sol/iodata.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/common/iodata_util.sol/iodata_util.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_data.sol/sysio_data.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_errors.sol/sysio_errors.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_merkle.sol/sysio_merkle.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_name.sol/sysio_name.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_pubkey.sol/sysio_pubkey.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_read.sol/sysio_read.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_tester.sol/SysioTester.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_verify.sol/sysio_verify.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_write.sol/sysio_write.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/liqEth/BeaconState.sol/BeaconState.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IDepositContract.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IDepositManager.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/outpost/OPPCommon.sol/IOPPEndpoint.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/outpost/interfaces/IPretoken.sol/IPretoken.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/outpost/interfaces/IWarrant.sol/IWarrant.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +0 -0
- /package/src/assets/ethereum/{ABI → hoodi}/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPP.sol/OPP.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPP.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPPInbound.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPPReceiver.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPPSender.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/OPPCommon.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPEndpoint.sol/OPPEndpoint.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPErrors.sol/OPPErrors.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPInbound.sol/OPPInbound.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPReceiver.sol/OPPReceiver.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPSender.sol/OPPSender.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManaged.sol/OutpostManaged.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManagerCommon.sol/IOutpostManager.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +0 -0
- /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostOwnable.sol/OutpostOwnable.json +0 -0
|
@@ -8,13 +8,14 @@ import {
|
|
|
8
8
|
TrancheSnapshot
|
|
9
9
|
} from '../../types';
|
|
10
10
|
import { EthereumContractService } from './contract';
|
|
11
|
-
import { preLaunchReceipt } from './types';
|
|
12
|
-
import { buildEthereumTrancheSnapshot } from './utils';
|
|
11
|
+
import { preLaunchReceipt, WithdrawReceipt } from './types';
|
|
12
|
+
import { buildEthereumTrancheSnapshot, formatContractErrors } from './utils';
|
|
13
13
|
import { ConvertClient } from './clients/convert.client';
|
|
14
14
|
import { StakeClient } from './clients/stake.client';
|
|
15
15
|
import { PretokenClient } from './clients/pretoken.client';
|
|
16
16
|
import { OPPClient } from './clients/opp.client';
|
|
17
17
|
import { ReceiptClient } from './clients/receipt.client';
|
|
18
|
+
import { ValidatorClient } from './clients/validator.client';
|
|
18
19
|
|
|
19
20
|
export const INITIAL_TRANCHE_SUPPLY = 35000;
|
|
20
21
|
|
|
@@ -29,10 +30,11 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
29
30
|
private stakeClient: StakeClient;
|
|
30
31
|
private oppClient: OPPClient;
|
|
31
32
|
private receiptClient: ReceiptClient;
|
|
32
|
-
|
|
33
|
+
private validatorClient: ValidatorClient;
|
|
33
34
|
|
|
34
35
|
get contract() { return this.contractService.contract; }
|
|
35
36
|
get network() { return this.config.network; }
|
|
37
|
+
get address() { return this.signer?.getAddress(); }
|
|
36
38
|
|
|
37
39
|
constructor(private config: StakerConfig) {
|
|
38
40
|
try {
|
|
@@ -48,6 +50,7 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
48
50
|
this.contractService = new EthereumContractService({
|
|
49
51
|
provider: this.provider,
|
|
50
52
|
signer: this.signer,
|
|
53
|
+
chainId: config.network.chainId as EvmChainID,
|
|
51
54
|
});
|
|
52
55
|
|
|
53
56
|
this.convertClient = new ConvertClient(this.contractService);
|
|
@@ -55,6 +58,7 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
55
58
|
this.stakeClient = new StakeClient(this.contractService);
|
|
56
59
|
this.oppClient = new OPPClient(this.contractService);
|
|
57
60
|
this.receiptClient = new ReceiptClient(this.contractService);
|
|
61
|
+
this.validatorClient = new ValidatorClient(this.contractService)
|
|
58
62
|
}
|
|
59
63
|
catch (error) {
|
|
60
64
|
// console.error('Error initializing EthereumStakingClient:', error);
|
|
@@ -91,26 +95,51 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
91
95
|
async withdraw(amount: bigint): Promise<string> {
|
|
92
96
|
this.ensureUser();
|
|
93
97
|
|
|
94
|
-
const address = await this.
|
|
98
|
+
const address = await this.address!;
|
|
95
99
|
const amountWei = BigNumber.from(amount);
|
|
96
100
|
|
|
97
101
|
const result = await this.convertClient.performWithdraw(address, amountWei)
|
|
98
102
|
return result.txHash;
|
|
99
103
|
}
|
|
100
104
|
|
|
105
|
+
/**
|
|
106
|
+
* List withdrawal queue receipts for a wallet (pending / in-progress exits after safeBurn).
|
|
107
|
+
* @param address Owner to query; defaults to the connected wallet.
|
|
108
|
+
* @returns Withdrawal receipt NFT entries from the protocol view
|
|
109
|
+
*/
|
|
110
|
+
async getPendingWithdraws(address?: string): Promise<WithdrawReceipt[]> {
|
|
111
|
+
this.ensureUser();
|
|
112
|
+
const owner = address ?? await this.address!;
|
|
113
|
+
return await this.receiptClient.fetchWithdrawReceipts(owner);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* Claim native ETH for a matured withdrawal using the WithdrawalQueue NFT token id
|
|
118
|
+
* (via DepositManager.claim after the delay has passed).
|
|
119
|
+
* @param tokenId Withdrawal request / queue NFT token id
|
|
120
|
+
* @returns transaction hash
|
|
121
|
+
*/
|
|
122
|
+
async claimWithdraw(tokenId: bigint): Promise<string> {
|
|
123
|
+
this.ensureUser();
|
|
124
|
+
|
|
125
|
+
const tokenIdBigNum = BigNumber.from(tokenId)
|
|
126
|
+
const result = await this.convertClient.claimWithdraw(tokenIdBigNum)
|
|
127
|
+
return result.txHash;
|
|
128
|
+
}
|
|
129
|
+
|
|
101
130
|
|
|
102
131
|
/**
|
|
103
132
|
* Stake liqETH via DepositManager.
|
|
104
133
|
* @param amount Amount in wei - Keep this as a bigint / string in the caller; avoid JS floats.
|
|
105
134
|
* @returns transaction hash
|
|
106
135
|
*/
|
|
107
|
-
async stake(amount: bigint): Promise<string> {
|
|
136
|
+
async stake(amount: bigint, wireAccount?: string): Promise<string> {
|
|
108
137
|
this.ensureUser();
|
|
109
138
|
|
|
110
|
-
const walletAddress = await this.
|
|
139
|
+
const walletAddress = await this.address!;
|
|
111
140
|
const amountWei = BigNumber.from(amount);
|
|
112
141
|
|
|
113
|
-
const result = await this.stakeClient.
|
|
142
|
+
const result = await this.stakeClient.performStakeToWire(amountWei, walletAddress, wireAccount);
|
|
114
143
|
return result.txHash;
|
|
115
144
|
}
|
|
116
145
|
|
|
@@ -120,6 +149,57 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
120
149
|
throw new Error("Method not yet implemented.");
|
|
121
150
|
}
|
|
122
151
|
|
|
152
|
+
/**
|
|
153
|
+
* Deposit ETH to liqETH, then stake the liqETH.
|
|
154
|
+
* @param amountWei Amount in wei.
|
|
155
|
+
* @returns transaction hash
|
|
156
|
+
*/
|
|
157
|
+
async depositAndStake(amount: bigint, wireAccount?: string): Promise<string> {
|
|
158
|
+
this.ensureUser();
|
|
159
|
+
if (!amount || amount <= BigInt(0))
|
|
160
|
+
throw new Error('Amount must be greater than zero.');
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
const walletAddress = await this.address!;
|
|
164
|
+
let amountWei = BigNumber.from(amount);
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
const result = await this.convertClient.performDeposit(amountWei);
|
|
168
|
+
console.log('result of performDeposit()', result);
|
|
169
|
+
|
|
170
|
+
const result2 = await this.stakeClient.performStakeToWire(amountWei, walletAddress, wireAccount);
|
|
171
|
+
console.log('result of performStakeToWire()', result2);
|
|
172
|
+
|
|
173
|
+
// const result = await this.stakeClient.performDepositAndStakeToWire(BigNumber.from(amountWei), wireAccount);
|
|
174
|
+
return result2.txHash;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
/**
|
|
178
|
+
* Deposit ETH to liqETH, then purchase pretokens in a single transaction.
|
|
179
|
+
* @param amountWei Amount in wei.
|
|
180
|
+
* @returns transaction hash
|
|
181
|
+
*/
|
|
182
|
+
async depositAndBuy(amountWei: bigint): Promise<string> {
|
|
183
|
+
this.ensureUser();
|
|
184
|
+
if (!amountWei || amountWei <= BigInt(0))
|
|
185
|
+
throw new Error('Amount must be greater than zero.');
|
|
186
|
+
|
|
187
|
+
const result = await this.stakeClient.performDepositAndPurchase(BigNumber.from(amountWei));
|
|
188
|
+
return result.txHash;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
/**
|
|
192
|
+
* Unstake liqETH, then request a withdrawal in a single transaction.
|
|
193
|
+
* @param tokenId The ReceiptNFT token ID for the stake position
|
|
194
|
+
* @returns transaction hash
|
|
195
|
+
*/
|
|
196
|
+
async unstakeAndWithdraw(tokenId: bigint): Promise<string> {
|
|
197
|
+
this.ensureUser();
|
|
198
|
+
|
|
199
|
+
const result = await this.stakeClient.performUnstakeAndRequestWithdraw(BigNumber.from(tokenId));
|
|
200
|
+
return result.txHash;
|
|
201
|
+
}
|
|
202
|
+
|
|
123
203
|
|
|
124
204
|
/**
|
|
125
205
|
* ETH Prelaunch function to unstake liqEth
|
|
@@ -139,16 +219,55 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
139
219
|
async buy(amount: bigint): Promise<string> {
|
|
140
220
|
this.ensureUser();
|
|
141
221
|
|
|
142
|
-
const buyer = await this.
|
|
143
|
-
|
|
144
|
-
// ! Hoodi only - check if the mock aggregator price is stale, and if so, update it before submitting the buy request
|
|
145
|
-
await this.updateMockAggregatorPrice();
|
|
222
|
+
const buyer = await this.address!;
|
|
146
223
|
|
|
147
224
|
let result = await this.pretokenClient.purchasePretokensWithLiqETH(amount, buyer);
|
|
148
225
|
return result && result.txHash ? result.txHash : "Error - no resulting txHash";
|
|
149
226
|
}
|
|
150
227
|
|
|
151
228
|
|
|
229
|
+
/**
|
|
230
|
+
* Validator functions
|
|
231
|
+
*/
|
|
232
|
+
async validatorDeposit(): Promise<string> {
|
|
233
|
+
this.ensureUser();
|
|
234
|
+
|
|
235
|
+
let result = await this.validatorClient.validatorDepositAndLockBond();
|
|
236
|
+
return result && result.txHash ? result.txHash : "Error - no resulting txHash";
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
// ! Testnet only - check if the mock aggregator price is stale, and if so, update it before submitting the buy request
|
|
244
|
+
// async crankTestnetAggregator(): Promise<string> {
|
|
245
|
+
// this.ensureUser();
|
|
246
|
+
|
|
247
|
+
// const network = await this.provider.getNetwork();
|
|
248
|
+
// const chainId = network.chainId;
|
|
249
|
+
// const allowedTestChains = new Set([560048, 31337]);
|
|
250
|
+
// if (!allowedTestChains.has(chainId)) return "Testnet crank is only intended for test/local networks - current chain is "+chainId+". Skipping aggregator update";
|
|
251
|
+
|
|
252
|
+
// const [agg, opp] = await Promise.allSettled([
|
|
253
|
+
// this.updateMockAggregatorPrice(),
|
|
254
|
+
// this.fixOppTooManyAttestations(),
|
|
255
|
+
// ]);
|
|
256
|
+
|
|
257
|
+
// const fmt = (name: string, r: PromiseSettledResult<unknown>) => {
|
|
258
|
+
// if (r.status === 'fulfilled') {
|
|
259
|
+
// const suffix = r.value !== undefined ? ` (${String(r.value)})` : '';
|
|
260
|
+
// return `${name}: ok${suffix}`;
|
|
261
|
+
// }
|
|
262
|
+
// return `${name}: failed (${String(r.reason)})`;
|
|
263
|
+
// };
|
|
264
|
+
|
|
265
|
+
// console.log('crankTestnetAggregator()', { agg, opp });
|
|
266
|
+
// return `${fmt('updateMockAggregatorPrice', agg)}; ${fmt('fixOppTooManyAttestations', opp)}`;
|
|
267
|
+
// }
|
|
268
|
+
|
|
269
|
+
|
|
270
|
+
|
|
152
271
|
/**
|
|
153
272
|
* Resolve the user's ETH + liqETH balances.
|
|
154
273
|
*
|
|
@@ -156,101 +275,107 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
156
275
|
* actual = liqETH token balance (ERC-20)
|
|
157
276
|
* tracked = liqETH tracked balance (protocol/accounting view)
|
|
158
277
|
*/
|
|
159
|
-
async getPortfolio(): Promise<Portfolio | null> {
|
|
160
|
-
if (!this.signer) return Promise.resolve(null);
|
|
278
|
+
async getPortfolio(address?: string): Promise<Portfolio | null> {
|
|
161
279
|
|
|
162
|
-
|
|
280
|
+
try {
|
|
281
|
+
if (!this.signer) return Promise.resolve(null);
|
|
163
282
|
|
|
164
|
-
|
|
165
|
-
const nativeBalance = await this.provider.getBalance(walletAddress);
|
|
166
|
-
const nativeDecimals = this.network?.nativeCurrency?.decimals ?? 18;
|
|
167
|
-
const nativeSymbol = this.network?.nativeCurrency?.symbol ?? 'ETH';
|
|
283
|
+
const walletAddress = address ?? await this.address!;
|
|
168
284
|
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
285
|
+
// 1) Native ETH balance
|
|
286
|
+
const nativeBalance = await this.provider.getBalance(walletAddress);
|
|
287
|
+
const nativeDecimals = this.network?.nativeCurrency?.decimals ?? 18;
|
|
288
|
+
const nativeSymbol = this.network?.nativeCurrency?.symbol ?? 'ETH';
|
|
172
289
|
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
for (let r of stakeReceipts) {
|
|
177
|
-
stakeBalanceBN = stakeBalanceBN.add(BigNumber.from(r.receipt.principal.amount));
|
|
178
|
-
}
|
|
179
|
-
let stakeSharesBN = BigNumber.from(0);
|
|
180
|
-
for (let r of stakeReceipts) {
|
|
181
|
-
stakeSharesBN = stakeSharesBN.add(BigNumber.from(r.receipt.shares.amount));
|
|
182
|
-
}
|
|
290
|
+
// 2) liqETH ERC-20 balance (actual)
|
|
291
|
+
const liqBalance: ethers.BigNumber = await this.contract.LiqEthToken.balanceOf(walletAddress);
|
|
292
|
+
const liqSymbol = 'Liq' + (this.network?.nativeCurrency?.symbol ?? 'ETH');
|
|
183
293
|
|
|
184
|
-
|
|
185
|
-
|
|
294
|
+
// 3) staked liqEth ERC-20 balance (calculate from receipts)
|
|
295
|
+
let stakeReceipts = await this.receiptClient.stakeReceipts(walletAddress);
|
|
186
296
|
|
|
297
|
+
let stakeBalanceBN = BigNumber.from(0);
|
|
298
|
+
for (let r of stakeReceipts) {
|
|
299
|
+
stakeBalanceBN = stakeBalanceBN.add(BigNumber.from(r.receipt.principal.amount));
|
|
300
|
+
}
|
|
301
|
+
let stakeSharesBN = BigNumber.from(0);
|
|
302
|
+
for (let r of stakeReceipts) {
|
|
303
|
+
stakeSharesBN = stakeSharesBN.add(BigNumber.from(r.receipt.shares.amount));
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
// 4) WIRE pretoken balance
|
|
307
|
+
const wireBalance: ethers.BigNumber = await this.contract.Pretoken.balanceOf(walletAddress);
|
|
308
|
+
|
|
309
|
+
// 5) Calculate staking yield
|
|
310
|
+
let currentIndex = BigInt(0);
|
|
311
|
+
let totalShares = BigInt(0);
|
|
312
|
+
let userShares = BigInt(0);
|
|
313
|
+
const indexScale = BigInt(1e27);
|
|
314
|
+
try {
|
|
315
|
+
// These may throw if not implemented on contract
|
|
316
|
+
const [indexBn, totalSharesBn] = await Promise.all([
|
|
317
|
+
this.contract.Depositor.index().catch(() => BigNumber.from(0)),
|
|
318
|
+
this.contract.Depositor.totalShares().catch(() => BigNumber.from(0)),
|
|
319
|
+
]);
|
|
320
|
+
|
|
321
|
+
const userSharesBn = stakeSharesBN;
|
|
322
|
+
currentIndex = BigInt(indexBn.toString());
|
|
323
|
+
totalShares = BigInt(totalSharesBn.toString());
|
|
324
|
+
userShares = BigInt(userSharesBn.toString());
|
|
325
|
+
} catch (error) {
|
|
326
|
+
console.log('Error fetching staking index/shares:', error);
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
// sharesToTokens(userShares, currentIndex) = userShares * currentIndex / indexScale
|
|
330
|
+
let estimatedClaim = BigInt(0);
|
|
331
|
+
let estimatedYield = BigInt(0);
|
|
332
|
+
|
|
333
|
+
if (userShares > BigInt(0) && currentIndex > BigInt(0)) {
|
|
334
|
+
estimatedClaim = (userShares * currentIndex) / indexScale;
|
|
335
|
+
if (estimatedClaim > stakeBalanceBN.toBigInt()) {
|
|
336
|
+
estimatedYield = estimatedClaim - stakeBalanceBN.toBigInt();
|
|
337
|
+
}
|
|
338
|
+
}
|
|
187
339
|
|
|
188
|
-
// 5) Calculate staking yield
|
|
189
|
-
let currentIndex = BigInt(0);
|
|
190
|
-
let totalShares = BigInt(0);
|
|
191
|
-
let userShares = BigInt(0);
|
|
192
|
-
const indexScale = BigInt(1e27);
|
|
193
|
-
try {
|
|
194
|
-
// These may throw if not implemented on contract
|
|
195
|
-
const [indexBn, totalSharesBn] = await Promise.all([
|
|
196
|
-
this.contract.Depositor.index().catch(() => BigNumber.from(0)),
|
|
197
|
-
this.contract.Depositor.totalShares().catch(() => BigNumber.from(0)),
|
|
198
|
-
]);
|
|
199
340
|
|
|
200
|
-
const
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
wire: {
|
|
238
|
-
amount: wireBalance.toBigInt(),
|
|
239
|
-
decimals: 18,
|
|
240
|
-
symbol: '$WIRE',
|
|
241
|
-
},
|
|
242
|
-
|
|
243
|
-
yield: {
|
|
244
|
-
currentIndex,
|
|
245
|
-
indexScale,
|
|
246
|
-
totalShares,
|
|
247
|
-
userShares,
|
|
248
|
-
estimatedClaim,
|
|
249
|
-
estimatedYield,
|
|
250
|
-
},
|
|
251
|
-
chainID: this.network.chainId
|
|
341
|
+
const portfolio: Portfolio = {
|
|
342
|
+
native: {
|
|
343
|
+
amount: nativeBalance.toBigInt(),
|
|
344
|
+
decimals: nativeDecimals,
|
|
345
|
+
symbol: nativeSymbol,
|
|
346
|
+
},
|
|
347
|
+
liq: {
|
|
348
|
+
amount: liqBalance.toBigInt(),
|
|
349
|
+
decimals: nativeDecimals,
|
|
350
|
+
symbol: liqSymbol,
|
|
351
|
+
},
|
|
352
|
+
staked: {
|
|
353
|
+
amount: stakeBalanceBN.toBigInt(),
|
|
354
|
+
decimals: nativeDecimals,
|
|
355
|
+
symbol: liqSymbol,
|
|
356
|
+
},
|
|
357
|
+
wire: {
|
|
358
|
+
amount: wireBalance.toBigInt(),
|
|
359
|
+
decimals: 18,
|
|
360
|
+
symbol: '$WIRE',
|
|
361
|
+
},
|
|
362
|
+
|
|
363
|
+
yield: {
|
|
364
|
+
currentIndex,
|
|
365
|
+
indexScale,
|
|
366
|
+
totalShares,
|
|
367
|
+
userShares,
|
|
368
|
+
estimatedClaim,
|
|
369
|
+
estimatedYield,
|
|
370
|
+
},
|
|
371
|
+
chainID: this.network.chainId
|
|
372
|
+
}
|
|
373
|
+
return portfolio;
|
|
374
|
+
}
|
|
375
|
+
catch (error) {
|
|
376
|
+
// console.log('Error fetching Ethereum portfolio:', error);
|
|
377
|
+
throw error;
|
|
252
378
|
}
|
|
253
|
-
return portfolio;
|
|
254
379
|
}
|
|
255
380
|
|
|
256
381
|
/**
|
|
@@ -261,7 +386,7 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
261
386
|
async fetchPrelaunchReceipts(address?: string): Promise<preLaunchReceipt[]> {
|
|
262
387
|
this.ensureUser();
|
|
263
388
|
|
|
264
|
-
if (address === undefined) address = await this.
|
|
389
|
+
if (address === undefined) address = await this.address!;
|
|
265
390
|
|
|
266
391
|
//default to stake receipts
|
|
267
392
|
return await this.receiptClient.stakeReceipts(address);
|
|
@@ -270,11 +395,13 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
270
395
|
async getOPPMessages(address?: string): Promise<OPPAssertion[]> {
|
|
271
396
|
this.ensureUser();
|
|
272
397
|
|
|
273
|
-
if (!address) address = await this.
|
|
398
|
+
if (!address) address = await this.address!;
|
|
274
399
|
|
|
275
400
|
return await this.oppClient.getMessages(address);
|
|
276
401
|
}
|
|
277
402
|
|
|
403
|
+
|
|
404
|
+
|
|
278
405
|
// Ensure that signer wallet is available for write operations
|
|
279
406
|
private ensureUser() {
|
|
280
407
|
if (!this.signer) {
|
|
@@ -330,24 +457,11 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
330
457
|
*
|
|
331
458
|
* SUPPORTS READ-ONLY ACcESS
|
|
332
459
|
*/
|
|
333
|
-
async getTrancheSnapshot(
|
|
334
|
-
chainID?: ChainID;
|
|
335
|
-
windowBefore?: number;
|
|
336
|
-
windowAfter?: number;
|
|
337
|
-
}): Promise<TrancheSnapshot> {
|
|
338
|
-
const {
|
|
339
|
-
chainID = EvmChainID.Hoodi,
|
|
340
|
-
windowBefore,
|
|
341
|
-
windowAfter,
|
|
342
|
-
} = options ?? {};
|
|
343
|
-
|
|
344
|
-
|
|
460
|
+
async getTrancheSnapshot(chainID: ChainID): Promise<TrancheSnapshot> {
|
|
345
461
|
try {
|
|
346
|
-
|
|
347
462
|
const blockNumber = await this.provider.getBlockNumber();
|
|
348
463
|
const blockTag = { blockTag: blockNumber };
|
|
349
464
|
|
|
350
|
-
|
|
351
465
|
// Fetch all required contract data
|
|
352
466
|
const [totalSharesBn, indexBn, trancheNumberBn, trancheSupplyBn, tranchePriceUsdBn, totalSupplyBn, supplyGrowthBps, priceGrowthCents, minPriceUsd, maxPriceUsd] = await Promise.all([
|
|
353
467
|
this.contract.Depositor.totalShares(blockTag),
|
|
@@ -365,11 +479,15 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
365
479
|
const totalTrancheSupply = BigInt(totalSupplyBn.toString()) / BigInt(1e10);
|
|
366
480
|
const currentTrancheSupply = BigInt(trancheSupplyBn.toString()) / BigInt(1e10);
|
|
367
481
|
|
|
368
|
-
|
|
369
482
|
// fetch price and timestamp from aggregator
|
|
370
|
-
const [roundId, answer, startedAt, updatedAt, answeredInRound] = await this.contract.MockAggregator.latestRoundData();
|
|
371
|
-
|
|
372
|
-
let
|
|
483
|
+
// const [roundId, answer, startedAt, updatedAt, answeredInRound] = await this.contract.MockAggregator.latestRoundData();
|
|
484
|
+
//originally fetched ethPrice from aggregator - pulling from EthUsdPriceConsumer instead - this is where the actual price gets pulled from when purchasing pretokens.
|
|
485
|
+
// let ethPriceUsd: bigint = BigInt(answer.toString());)
|
|
486
|
+
|
|
487
|
+
let ethPriceUsdBn = await this.contract.EthUsdPriceConsumer.getPrice18Decimals();
|
|
488
|
+
let ethPriceUsd: bigint = BigInt(ethPriceUsdBn.toString()) / BigInt(1e10);
|
|
489
|
+
|
|
490
|
+
// let nativePriceTimestamp: number = Number(updatedAt);
|
|
373
491
|
|
|
374
492
|
const initialTrancheSupply = BigInt(INITIAL_TRANCHE_SUPPLY) * BigInt(1e8);
|
|
375
493
|
|
|
@@ -386,11 +504,7 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
386
504
|
priceGrowthCents,
|
|
387
505
|
minPriceUsd,
|
|
388
506
|
maxPriceUsd,
|
|
389
|
-
|
|
390
507
|
ethPriceUsd,
|
|
391
|
-
nativePriceTimestamp,
|
|
392
|
-
ladderWindowBefore: windowBefore,
|
|
393
|
-
ladderWindowAfter: windowAfter,
|
|
394
508
|
});
|
|
395
509
|
}
|
|
396
510
|
catch (err: any) {
|
|
@@ -410,14 +524,15 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
410
524
|
* @param options.safetyMultiplier Additional safety multiplier on top of txCount (default 1.5x)
|
|
411
525
|
* @param options.minBufferWei Optional override minimum buffer (defaults ~0.002 ETH)
|
|
412
526
|
*/
|
|
413
|
-
async
|
|
527
|
+
async getDepositBuffer(options?: {
|
|
414
528
|
txCount?: number;
|
|
415
529
|
safetyMultiplier?: number;
|
|
416
530
|
minBufferWei?: bigint;
|
|
531
|
+
balanceOverrideLamports?: bigint;
|
|
417
532
|
}): Promise<bigint> {
|
|
418
533
|
this.ensureUser();
|
|
419
534
|
|
|
420
|
-
const walletAddress = await this.
|
|
535
|
+
const walletAddress = await this.address!;
|
|
421
536
|
|
|
422
537
|
// 1) Estimate a baseline gas usage using a simple self-transfer.
|
|
423
538
|
// This is cheap and doesn't depend on your contract ABI at all.
|
|
@@ -472,7 +587,8 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
472
587
|
// Internal ETH Staking client helper functions
|
|
473
588
|
// ---------------------------------------------------------------------
|
|
474
589
|
|
|
475
|
-
// ! This is a temporary measure for
|
|
590
|
+
// ! This is a temporary measure for testnet because there is no aggregator deployed
|
|
591
|
+
/*
|
|
476
592
|
private async updateMockAggregatorPrice() {
|
|
477
593
|
const aggregator = this.contract.MockAggregator;
|
|
478
594
|
|
|
@@ -484,10 +600,12 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
484
600
|
const ONE_HOUR = 1 * 3600;
|
|
485
601
|
// const ONE_HOUR = 10;
|
|
486
602
|
if (ageSec > ONE_HOUR) {
|
|
603
|
+
console.log('Attempt to run updateMockAggregatorPrice - MockAggregator price is stale by', ageSec, 'seconds - updating price before proceeding with buy...');
|
|
604
|
+
|
|
487
605
|
// safety check - only run in non-production contexts
|
|
488
606
|
const network = await this.provider.getNetwork();
|
|
489
607
|
const chainId = network.chainId;
|
|
490
|
-
const allowedTestChains = new Set([560048]);
|
|
608
|
+
const allowedTestChains = new Set([560048, 31337]);
|
|
491
609
|
if (!allowedTestChains.has(chainId)) {
|
|
492
610
|
console.warn(`MockAggregator is stale (${ageSec}s) but chainId ${chainId} is not a test/local network — skipping update.`);
|
|
493
611
|
return;
|
|
@@ -501,6 +619,8 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
501
619
|
|
|
502
620
|
const currentEthPrice = ethers.utils.parseUnits(ethUsd.toString(), 8);
|
|
503
621
|
|
|
622
|
+
console.log('currentEthPrice', currentEthPrice.toString())
|
|
623
|
+
|
|
504
624
|
try {
|
|
505
625
|
//update to be intentionally stale
|
|
506
626
|
// const alttx = await aggregator.updateStale(currentEthPrice, now - 7200);
|
|
@@ -510,7 +630,8 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
510
630
|
//update answer with current timestamp
|
|
511
631
|
const tx = await aggregator.updateAnswer(currentEthPrice);
|
|
512
632
|
const txreceipt = await tx.wait(1);
|
|
513
|
-
|
|
633
|
+
console.log('MockAggregator answer updated - receipt:', txreceipt)
|
|
634
|
+
return txreceipt
|
|
514
635
|
} catch (err: any) {
|
|
515
636
|
console.error('MockAggregator updateAnswer failed', err?.message || err);
|
|
516
637
|
}
|
|
@@ -518,4 +639,98 @@ export class EthereumStakingClient implements IStakingClient {
|
|
|
518
639
|
console.log(`MockAggregator updated ${ageSec}s ago — no update needed`);
|
|
519
640
|
}
|
|
520
641
|
}
|
|
521
|
-
|
|
642
|
+
|
|
643
|
+
|
|
644
|
+
private async fixOppTooManyAttestations() {
|
|
645
|
+
const opp = this.contract.OPP;
|
|
646
|
+
const outpostManager = this.contract.OutpostManager;
|
|
647
|
+
|
|
648
|
+
const [authority, pendingCountRaw, maxRaw, sendModeTagRaw] = await Promise.all([
|
|
649
|
+
opp.authority(),
|
|
650
|
+
opp.pendingAttestationCount(),
|
|
651
|
+
opp.MESSAGE_EPOCH_MAX_ATTESTATIONS(),
|
|
652
|
+
opp.sendModeTag(),
|
|
653
|
+
]);
|
|
654
|
+
|
|
655
|
+
const toBigInt = (v: any) => (typeof v === "bigint" ? v : BigInt(v.toString()));
|
|
656
|
+
const pendingCount = toBigInt(pendingCountRaw);
|
|
657
|
+
const maxAttestations = toBigInt(maxRaw);
|
|
658
|
+
const sendModeTag = toBigInt(sendModeTagRaw);
|
|
659
|
+
|
|
660
|
+
console.log(`OPP status: authority=${authority}, pendingAttestationCount=${pendingCount}, MESSAGE_EPOCH_MAX_ATTESTATIONS=${maxAttestations}, sendModeTag=${sendModeTag}`);
|
|
661
|
+
|
|
662
|
+
if (sendModeTag === 0n) {
|
|
663
|
+
console.log("OPP is not in send mode.");
|
|
664
|
+
// return;
|
|
665
|
+
}
|
|
666
|
+
|
|
667
|
+
const shouldBumpMax = maxAttestations === 1n || pendingCount > maxAttestations;
|
|
668
|
+
if (!shouldBumpMax) {
|
|
669
|
+
console.log(
|
|
670
|
+
`No fix needed: pendingAttestationCount=${pendingCount} <= MESSAGE_EPOCH_MAX_ATTESTATIONS=${maxAttestations}`,
|
|
671
|
+
);
|
|
672
|
+
// return;
|
|
673
|
+
}
|
|
674
|
+
|
|
675
|
+
console.log(
|
|
676
|
+
`OPP bump needed (pending=${pendingCount}, max=${maxAttestations}) — attempting to set new max and ${sendModeTag === 0n ? 'skip' : 'call'} exitSendMode(${sendModeTag})...`
|
|
677
|
+
);
|
|
678
|
+
|
|
679
|
+
console.log(await this.provider.getNetwork());
|
|
680
|
+
|
|
681
|
+
|
|
682
|
+
|
|
683
|
+
// safety check to only run in testnet
|
|
684
|
+
const network = await this.provider.getNetwork();
|
|
685
|
+
const chainId = toBigInt(network.chainId);
|
|
686
|
+
const allowedTestChains = new Set<bigint>([560048n, 31337n]);
|
|
687
|
+
if (!allowedTestChains.has(chainId)) {
|
|
688
|
+
console.warn(
|
|
689
|
+
`Refusing to modify OPP config on chainId ${chainId}. Add it to allowedTestChains if this is expected.`
|
|
690
|
+
);
|
|
691
|
+
return;
|
|
692
|
+
}
|
|
693
|
+
|
|
694
|
+
// minimal bump bump: set max to pendingCount (or a small default when max was 1) + buffer.
|
|
695
|
+
const base = pendingCount > 0n ? pendingCount : 1n;
|
|
696
|
+
// const newMax = base + 2n; // add a small buffer to prevent immediate recurrence
|
|
697
|
+
const newMax = 1n; // add a small buffer to prevent immediate recurrence
|
|
698
|
+
|
|
699
|
+
const encodeOppCall = (fn: string, args: any[]) =>
|
|
700
|
+
opp.interface.encodeFunctionData(fn, args);
|
|
701
|
+
|
|
702
|
+
try {
|
|
703
|
+
const data = encodeOppCall('setMessageEpochMaxAttestations', [newMax]);
|
|
704
|
+
await outpostManager.callStatic.execute(opp.address, data);
|
|
705
|
+
console.log('OutpostManager.execute(callStatic) setMessageEpochMaxAttestations passed');
|
|
706
|
+
} catch (e) {
|
|
707
|
+
console.error('OutpostManager.execute(callStatic) setMessageEpochMaxAttestations revert:', e);
|
|
708
|
+
}
|
|
709
|
+
|
|
710
|
+
|
|
711
|
+
try {
|
|
712
|
+
const data1 = encodeOppCall('setMessageEpochMaxAttestations', [newMax]);
|
|
713
|
+
const tx1 = await outpostManager.execute(opp.address, data1, {
|
|
714
|
+
gasLimit: 500_000,
|
|
715
|
+
});
|
|
716
|
+
const receipt1 = await tx1.wait(1);
|
|
717
|
+
console.log("setMessageEpochMaxAttestations confirmed:", receipt1);
|
|
718
|
+
|
|
719
|
+
if (sendModeTag !== 0n) {
|
|
720
|
+
const data2 = encodeOppCall('exitSendMode', [sendModeTag]);
|
|
721
|
+
const tx2 = await outpostManager.execute(opp.address, data2, {
|
|
722
|
+
gasLimit: 500_000,
|
|
723
|
+
});
|
|
724
|
+
const receipt2 = await tx2.wait(1);
|
|
725
|
+
console.log("exitSendMode confirmed:", receipt2);
|
|
726
|
+
return { setMaxReceipt: receipt1, exitReceipt: receipt2 };
|
|
727
|
+
}
|
|
728
|
+
|
|
729
|
+
return { setMaxReceipt: receipt1 };
|
|
730
|
+
} catch (err: any) {
|
|
731
|
+
let errorObj = formatContractErrors(err);
|
|
732
|
+
console.error("fixOppTooManyAttestations failed:", err?.message || err, errorObj);
|
|
733
|
+
}
|
|
734
|
+
}
|
|
735
|
+
*/
|
|
736
|
+
}
|