@wireio/stake 2.7.4 → 3.0.0
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 +34 -15
- package/lib/stake.browser.js +50561 -13484
- package/lib/stake.browser.js.map +1 -1
- package/lib/stake.d.ts +564 -15719
- package/lib/stake.js +47546 -10288
- package/lib/stake.js.map +1 -1
- package/lib/stake.m.js +50561 -13484
- package/lib/stake.m.js.map +1 -1
- package/package.json +1 -1
- package/src/assets/evm/hoodi/.gitkeep +1 -0
- package/src/assets/evm/monad-testnet/.gitkeep +0 -0
- package/src/assets/evm/polygon-amoy/.gitkeep +0 -0
- package/src/assets/evm/wiredev/common/Base58.sol/Base58.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/Base58.sol/Base58.json +164 -0
- package/src/assets/evm/wiredev/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +76 -0
- package/src/assets/evm/wiredev/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/RestrictedCallers.sol/RestrictedCallers.json +10 -0
- package/src/assets/evm/wiredev/common/iodata.sol/iodata.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/iodata.sol/iodata.json +618 -0
- package/src/assets/evm/wiredev/common/iodata_util.sol/iodata_util.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/iodata_util.sol/iodata_util.json +40 -0
- package/src/assets/evm/wiredev/common/sysio_data.sol/sysio_data.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/sysio_data.sol/sysio_data.json +10 -0
- package/src/assets/evm/wiredev/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/sysio_errors.sol/sysio_errors.json +10 -0
- package/src/assets/evm/wiredev/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/sysio_merkle.sol/sysio_merkle.json +233 -0
- package/src/assets/evm/wiredev/common/sysio_name.sol/sysio_name.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/sysio_name.sol/sysio_name.json +49 -0
- package/src/assets/evm/wiredev/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/sysio_pubkey.sol/sysio_pubkey.json +64 -0
- package/src/assets/evm/wiredev/common/sysio_read.sol/sysio_read.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/sysio_read.sol/sysio_read.json +1458 -0
- package/src/assets/evm/wiredev/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/sysio_tester.sol/SysioTester.json +1532 -0
- package/src/assets/evm/wiredev/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/sysio_verify.sol/sysio_verify.json +1525 -0
- package/src/assets/evm/wiredev/common/sysio_write.sol/sysio_write.dbg.json +4 -0
- package/src/assets/evm/wiredev/common/sysio_write.sol/sysio_write.json +1076 -0
- package/src/assets/evm/wiredev/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/BeaconState.sol/BeaconState.json +807 -0
- package/src/assets/evm/wiredev/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/DepositManager.sol/DepositManagerV2.json +985 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +1289 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IAccounting.json +182 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IDepositContract.json +39 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IDepositManager.json +64 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IStakingModule.json +344 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/LiqEthCommon.json +10 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/LiqEthManaged.sol/LiqEthManaged.json +229 -0
- package/src/assets/evm/wiredev/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
- package/src/assets/evm/wiredev/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
- package/src/assets/evm/wiredev/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/Yield.sol/YieldOracle.json +1376 -0
- package/src/assets/evm/wiredev/liqEth/accounting.sol/AccountingV2.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/accounting.sol/AccountingV2.json +629 -0
- package/src/assets/evm/wiredev/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
- package/src/assets/evm/wiredev/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/stakingModule.sol/StakingModuleV2.json +1779 -0
- package/src/assets/evm/wiredev/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/DepositManager.sol/DepositManager.json +978 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IAccounting.json +176 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.json +249 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +263 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
- package/src/assets/evm/wiredev/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json +874 -0
- package/src/assets/evm/wiredev/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +937 -0
- package/src/assets/evm/wiredev/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/accounting.sol/Accounting.json +548 -0
- package/src/assets/evm/wiredev/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
- package/src/assets/evm/wiredev/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/v1/stakingModule.sol/StakingModule.json +1772 -0
- package/src/assets/evm/wiredev/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +973 -0
- package/src/assets/evm/wiredev/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/withdrawalVault.sol/Uint64BE.json +10 -0
- package/src/assets/evm/wiredev/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
- package/src/assets/evm/wiredev/liqEth/withdrawalVault.sol/WithdrawalVault.json +441 -0
- package/src/assets/evm/wiredev/outpost/BAR.sol/BAR.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/BAR.sol/BAR.json +1154 -0
- package/src/assets/evm/wiredev/outpost/Depositor.sol/Depositor.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/Depositor.sol/Depositor.json +1633 -0
- package/src/assets/evm/wiredev/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +122 -0
- package/src/assets/evm/wiredev/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +274 -0
- package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawFailedCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawFailedCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.json +10 -0
- package/src/assets/evm/wiredev/outpost/LiqEthBridge.sol/IDepositorBridgeHooks.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/LiqEthBridge.sol/IDepositorBridgeHooks.json +29 -0
- package/src/assets/evm/wiredev/outpost/LiqEthBridge.sol/LiqEthBridge.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/LiqEthBridge.sol/LiqEthBridge.json +1076 -0
- package/src/assets/evm/wiredev/outpost/OPP.sol/OPP.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPP.sol/OPP.json +1098 -0
- package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPP.json +81 -0
- package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPEndpoint.json +29 -0
- package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPInbound.json +330 -0
- package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPReceiver.json +29 -0
- package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPSender.json +41 -0
- package/src/assets/evm/wiredev/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPPCommon.sol/OPPCommon.json +287 -0
- package/src/assets/evm/wiredev/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPPEndpoint.sol/OPPEndpoint.json +337 -0
- package/src/assets/evm/wiredev/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +458 -0
- package/src/assets/evm/wiredev/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +442 -0
- package/src/assets/evm/wiredev/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPPErrors.sol/OPPErrors.json +288 -0
- package/src/assets/evm/wiredev/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPPInbound.sol/OPPInbound.json +1298 -0
- package/src/assets/evm/wiredev/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPPReceiver.sol/OPPReceiver.json +355 -0
- package/src/assets/evm/wiredev/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OPPSender.sol/OPPSender.json +367 -0
- package/src/assets/evm/wiredev/outpost/OperatorRegistry.sol/OperatorRegistry.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OperatorRegistry.sol/OperatorRegistry.json +1111 -0
- package/src/assets/evm/wiredev/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OutpostErrors.sol/OutpostErrors.json +211 -0
- package/src/assets/evm/wiredev/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OutpostManaged.sol/OutpostManaged.json +229 -0
- package/src/assets/evm/wiredev/outpost/OutpostManager.sol/OutpostManager.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OutpostManager.sol/OutpostManager.json +794 -0
- package/src/assets/evm/wiredev/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +1432 -0
- package/src/assets/evm/wiredev/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OutpostManagerCommon.sol/IOutpostManager.json +130 -0
- package/src/assets/evm/wiredev/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +29 -0
- package/src/assets/evm/wiredev/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +141 -0
- package/src/assets/evm/wiredev/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OutpostOwnable.sol/OutpostOwnable.json +213 -0
- package/src/assets/evm/wiredev/outpost/OutpostReserve.sol/OutpostReserve.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/OutpostReserve.sol/OutpostReserve.json +931 -0
- package/src/assets/evm/wiredev/outpost/Pool.sol/Pool.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/Pool.sol/Pool.json +659 -0
- package/src/assets/evm/wiredev/outpost/Pretoken.sol/Pretoken.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/Pretoken.sol/Pretoken.json +1436 -0
- package/src/assets/evm/wiredev/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/ReceiptNFT.sol/ReceiptNFT.json +1738 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.json +10 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.json +1437 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.json +10 -0
- package/src/assets/evm/wiredev/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/interfaces/IPretoken.sol/IPretoken.json +29 -0
- package/src/assets/evm/wiredev/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/interfaces/IWarrant.sol/IWarrant.json +29 -0
- package/src/assets/evm/wiredev/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +858 -0
- package/src/assets/evm/wiredev/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
- package/src/assets/evm/wiredev/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +30 -0
- package/src/assets/evm/wiredev/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
- package/src/assets/evm/wiredev/token/ERC1155Token.sol/ERC1155Token.json +472 -0
- package/src/assets/evm/wiredev/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
- package/src/assets/evm/wiredev/token/ERC20Token.sol/ERC20Token.json +330 -0
- package/src/assets/evm/wiredev/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
- package/src/assets/evm/wiredev/token/ERC721Token.sol/ERC721Token.json +449 -0
- package/src/assets/evm/wiredev/token/Eman1155.sol/Eman1155.dbg.json +4 -0
- package/src/assets/evm/wiredev/token/Eman1155.sol/Eman1155.json +560 -0
- package/src/assets/evm/wiredev/token/Eman20.sol/Eman20.dbg.json +4 -0
- package/src/assets/evm/wiredev/token/Eman20.sol/Eman20.json +460 -0
- package/src/assets/evm/wiredev/token/Eman721.sol/Eman721.dbg.json +4 -0
- package/src/assets/evm/wiredev/token/Eman721.sol/Eman721.json +624 -0
- package/src/assets/solana/mainnet/idl/validator_leaderboard.json.bak +568 -0
- package/src/assets/solana/wiredev/idl/liqsol_core.json +8726 -0
- package/src/assets/solana/wiredev/idl/liqsol_token.json +217 -0
- package/src/assets/solana/wiredev/idl/transfer_hook.json +490 -0
- package/src/assets/solana/wiredev/idl/validator_leaderboard.json +735 -0
- package/src/assets/solana/wiredev/types/liqsol_core.ts +8732 -0
- package/src/assets/solana/wiredev/types/liqsol_token.ts +223 -0
- package/src/assets/solana/wiredev/types/transfer_hook.ts +496 -0
- package/src/assets/solana/wiredev/types/validator_leaderboard.ts +741 -0
- package/src/chains.ts +165 -0
- package/src/index.ts +7 -3
- package/src/networks/{ethereum → evm}/clients/convert.client.ts +8 -3
- package/src/networks/evm/clients/instaswap.client.ts +440 -0
- package/src/networks/{ethereum → evm}/clients/opp.client.ts +3 -3
- package/src/networks/{ethereum → evm}/clients/pretoken.client.ts +11 -6
- package/src/networks/{ethereum → evm}/clients/receipt.client.ts +3 -3
- package/src/networks/{ethereum → evm}/clients/stake.client.ts +144 -20
- package/src/networks/{ethereum → evm}/clients/validator.client.ts +3 -3
- package/src/networks/{ethereum → evm}/contract.ts +207 -116
- package/src/networks/{ethereum/ethereum.ts → evm/evm.ts} +214 -68
- package/src/networks/{ethereum → evm}/utils.ts +56 -4
- package/src/networks/solana/clients/convert.client.ts +47 -11
- package/src/networks/solana/clients/distribution.client.ts +17 -13
- package/src/networks/solana/clients/instaswap.client.ts +486 -0
- package/src/networks/solana/clients/leaderboard.client.ts +4 -5
- package/src/networks/solana/clients/outpost.client.ts +110 -47
- package/src/networks/solana/clients/token.client.ts +20 -11
- package/src/networks/solana/constants.ts +27 -7
- package/src/networks/solana/program.ts +104 -19
- package/src/networks/solana/solana.ts +145 -15
- package/src/networks/solana/types.ts +1 -2
- package/src/networks/solana/utils.ts +36 -4
- package/src/staker.ts +22 -20
- package/src/status.ts +301 -0
- package/src/types.ts +6 -11
- /package/src/assets/{ethereum → evm}/mainnet/common/Base58.sol/Base58.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/Base58.sol/Base58.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/RestrictedCallers.sol/RestrictedCallers.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/iodata.sol/iodata.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/iodata.sol/iodata.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/iodata_util.sol/iodata_util.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/iodata_util.sol/iodata_util.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_data.sol/sysio_data.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_data.sol/sysio_data.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_errors.sol/sysio_errors.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_errors.sol/sysio_errors.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_merkle.sol/sysio_merkle.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_merkle.sol/sysio_merkle.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_name.sol/sysio_name.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_name.sol/sysio_name.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_pubkey.sol/sysio_pubkey.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_read.sol/sysio_read.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_read.sol/sysio_read.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_tester.sol/SysioTester.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_tester.sol/SysioTester.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_verify.sol/sysio_verify.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_verify.sol/sysio_verify.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_write.sol/sysio_write.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/common/sysio_write.sol/sysio_write.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/BeaconState.sol/BeaconState.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/BeaconState.sol/BeaconState.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/DepositManager.sol/DepositManagerV2.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/StakingLib.sol/StakingLib.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/StakingLib.sol/StakingLib.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/Yield.sol/YieldOracle.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/Yield.sol/YieldOracle.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/stakingModule.sol/StakingModuleV2.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/DepositManager.sol/DepositManager.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/accounting.sol/Accounting.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/accounting.sol/Accounting.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/stakingModule.sol/StakingModule.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/withdrawalVault.sol/Uint64BE.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/BAR.sol/BARV2.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/BAR.sol/BARV2.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/Depositor.sol/DepositorV2.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/Depositor.sol/DepositorV2.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPP.sol/OPP.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPP.sol/OPP.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPP.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPP.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPInbound.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPInbound.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPReceiver.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPSender.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPSender.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/OPPCommon.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/OPPCommon.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPEndpoint.sol/OPPEndpoint.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPErrors.sol/OPPErrors.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPErrors.sol/OPPErrors.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPInbound.sol/OPPInbound.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPInbound.sol/OPPInbound.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPReceiver.sol/OPPReceiver.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPSender.sol/OPPSender.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPSender.sol/OPPSender.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostErrors.sol/OutpostErrors.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManaged.sol/OutpostManaged.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerCommon.sol/IOutpostManager.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostOwnable.sol/OutpostOwnable.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/Pool.sol/PoolV2.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/Pool.sol/PoolV2.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/Pretoken.sol/PretokenV2.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/Pretoken.sol/PretokenV2.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/BAR.sol/BAR.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/BAR.sol/BAR.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/Depositor.sol/Depositor.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/Depositor.sol/Depositor.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/OutpostManager.sol/OutpostManager.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/OutpostManager.sol/OutpostManager.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/Pool.sol/Pool.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/Pool.sol/Pool.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/Pretoken.sol/Pretoken.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/Pretoken.sol/Pretoken.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/token/ERC1155Token.sol/ERC1155Token.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/token/ERC1155Token.sol/ERC1155Token.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/token/ERC20Token.sol/ERC20Token.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/token/ERC20Token.sol/ERC20Token.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/token/ERC721Token.sol/ERC721Token.dbg.json +0 -0
- /package/src/assets/{ethereum → evm}/mainnet/token/ERC721Token.sol/ERC721Token.json +0 -0
- /package/src/networks/{ethereum → evm}/types.ts +0 -0
|
@@ -44,6 +44,7 @@ import {
|
|
|
44
44
|
|
|
45
45
|
import { ConvertClient } from './clients/convert.client';
|
|
46
46
|
import { DistributionClient } from './clients/distribution.client';
|
|
47
|
+
import { SolanaInstaswapClient } from './clients/instaswap.client';
|
|
47
48
|
import { LeaderboardClient } from './clients/leaderboard.client';
|
|
48
49
|
import { OutpostClient } from './clients/outpost.client';
|
|
49
50
|
import { TokenClient } from './clients/token.client';
|
|
@@ -82,6 +83,7 @@ export class SolanaStakingClient implements IStakingClient {
|
|
|
82
83
|
|
|
83
84
|
public convertClient: ConvertClient;
|
|
84
85
|
public distributionClient: DistributionClient;
|
|
86
|
+
public instaswapClient: SolanaInstaswapClient;
|
|
85
87
|
public leaderboardClient: LeaderboardClient;
|
|
86
88
|
public outpostClient: OutpostClient;
|
|
87
89
|
public tokenClient: TokenClient;
|
|
@@ -213,6 +215,11 @@ export class SolanaStakingClient implements IStakingClient {
|
|
|
213
215
|
|
|
214
216
|
this.convertClient = new ConvertClient(this.anchor, this.program);
|
|
215
217
|
this.distributionClient = new DistributionClient(this.anchor, this.program);
|
|
218
|
+
this.instaswapClient = new SolanaInstaswapClient(
|
|
219
|
+
this.anchor,
|
|
220
|
+
this.program,
|
|
221
|
+
this.buildAndSendIx.bind(this),
|
|
222
|
+
);
|
|
216
223
|
this.leaderboardClient = new LeaderboardClient(this.anchor, this.program);
|
|
217
224
|
this.outpostClient = new OutpostClient(this.anchor, this.program);
|
|
218
225
|
this.tokenClient = new TokenClient(this.anchor, this.program);
|
|
@@ -232,10 +239,27 @@ export class SolanaStakingClient implements IStakingClient {
|
|
|
232
239
|
throw new Error('Deposit amount must be greater than zero.');
|
|
233
240
|
|
|
234
241
|
try {
|
|
235
|
-
const
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
242
|
+
const user = this.squadsVaultPDA ?? this.anchor.wallet.publicKey;
|
|
243
|
+
const submit = async (ix: TransactionInstruction | TransactionInstruction[]) => (
|
|
244
|
+
!!this.squadsX
|
|
245
|
+
? await this.sendSquadsIxs(ix)
|
|
246
|
+
: await this.buildAndSendIx(ix)
|
|
247
|
+
);
|
|
248
|
+
|
|
249
|
+
try {
|
|
250
|
+
const ix = await this.convertClient.buildDepositTx(amountLamports, user);
|
|
251
|
+
return await submit(ix);
|
|
252
|
+
} catch (err) {
|
|
253
|
+
if (!this.isLegacyUserRecordMigrationRequired(err)) {
|
|
254
|
+
throw err;
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
const registerIx = await this.convertClient.buildRegisterUserIx(user);
|
|
258
|
+
await submit(registerIx);
|
|
259
|
+
|
|
260
|
+
const retryIx = await this.convertClient.buildDepositTx(amountLamports, user);
|
|
261
|
+
return await submit(retryIx);
|
|
262
|
+
}
|
|
239
263
|
|
|
240
264
|
} catch (err) {
|
|
241
265
|
console.log(`Failed to deposit Solana: ${err}`);
|
|
@@ -299,6 +323,85 @@ export class SolanaStakingClient implements IStakingClient {
|
|
|
299
323
|
}
|
|
300
324
|
}
|
|
301
325
|
|
|
326
|
+
getLiqsolDestinationOwner(owner?: SolPubKey): SolPubKey {
|
|
327
|
+
return owner ?? this.squadsVaultPDA ?? this.anchor.wallet.publicKey;
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
getLiqsolDestinationAta(owner?: SolPubKey): SolPubKey {
|
|
331
|
+
const destinationOwner = this.getLiqsolDestinationOwner(owner);
|
|
332
|
+
const mint = this.program.deriveLiqsolMintPda();
|
|
333
|
+
return getAssociatedTokenAddressSync(
|
|
334
|
+
mint,
|
|
335
|
+
destinationOwner,
|
|
336
|
+
true,
|
|
337
|
+
TOKEN_2022_PROGRAM_ID,
|
|
338
|
+
ASSOCIATED_TOKEN_PROGRAM_ID,
|
|
339
|
+
);
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
async getLiqsolDestinationAtaState(owner?: SolPubKey): Promise<{
|
|
343
|
+
owner: SolPubKey;
|
|
344
|
+
mint: SolPubKey;
|
|
345
|
+
ata: SolPubKey;
|
|
346
|
+
exists: boolean;
|
|
347
|
+
}> {
|
|
348
|
+
const destinationOwner = this.getLiqsolDestinationOwner(owner);
|
|
349
|
+
const mint = this.program.deriveLiqsolMintPda();
|
|
350
|
+
const ata = this.getLiqsolDestinationAta(destinationOwner);
|
|
351
|
+
const accountInfo = await this.connection.getAccountInfo(ata, 'confirmed');
|
|
352
|
+
|
|
353
|
+
return {
|
|
354
|
+
owner: destinationOwner,
|
|
355
|
+
mint,
|
|
356
|
+
ata,
|
|
357
|
+
exists: !!accountInfo,
|
|
358
|
+
};
|
|
359
|
+
}
|
|
360
|
+
|
|
361
|
+
async maybeBuildCreateLiqsolDestinationAtaIx(
|
|
362
|
+
owner?: SolPubKey,
|
|
363
|
+
): Promise<TransactionInstruction | null> {
|
|
364
|
+
const state = await this.getLiqsolDestinationAtaState(owner);
|
|
365
|
+
if (state.exists) {
|
|
366
|
+
return null;
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
return createAssociatedTokenAccountInstruction(
|
|
370
|
+
this.feePayer,
|
|
371
|
+
state.ata,
|
|
372
|
+
state.owner,
|
|
373
|
+
state.mint,
|
|
374
|
+
TOKEN_2022_PROGRAM_ID,
|
|
375
|
+
ASSOCIATED_TOKEN_PROGRAM_ID,
|
|
376
|
+
);
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
async ensureLiqsolDestinationAta(owner?: SolPubKey): Promise<string | null> {
|
|
380
|
+
this.ensureUser();
|
|
381
|
+
const createAtaIx = await this.maybeBuildCreateLiqsolDestinationAtaIx(owner);
|
|
382
|
+
if (!createAtaIx) {
|
|
383
|
+
return null;
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
try {
|
|
387
|
+
return await this.buildAndSendIx(createAtaIx);
|
|
388
|
+
} catch (error) {
|
|
389
|
+
if (!this.isAtaAlreadyCreatedError(error)) {
|
|
390
|
+
throw error;
|
|
391
|
+
}
|
|
392
|
+
return null;
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
private async prependLiqsolDestinationAtaIx(
|
|
397
|
+
ix: TransactionInstruction | TransactionInstruction[],
|
|
398
|
+
owner?: SolPubKey,
|
|
399
|
+
): Promise<TransactionInstruction[]> {
|
|
400
|
+
const ixs = Array.isArray(ix) ? [...ix] : [ix];
|
|
401
|
+
const createAtaIx = await this.maybeBuildCreateLiqsolDestinationAtaIx(owner);
|
|
402
|
+
return createAtaIx ? [createAtaIx, ...ixs] : ixs;
|
|
403
|
+
}
|
|
404
|
+
|
|
302
405
|
/**
|
|
303
406
|
* Claim accrued liqSOL distribution rewards (liqsol_core::claim_rewards).
|
|
304
407
|
*/
|
|
@@ -308,9 +411,10 @@ export class SolanaStakingClient implements IStakingClient {
|
|
|
308
411
|
|
|
309
412
|
try {
|
|
310
413
|
const ix = await this.distributionClient.buildClaimRewardsIx(owner);
|
|
414
|
+
const ixs = await this.prependLiqsolDestinationAtaIx(ix, owner);
|
|
311
415
|
return !!this.squadsX
|
|
312
|
-
? await this.sendSquadsIxs(
|
|
313
|
-
: await this.buildAndSendIx(
|
|
416
|
+
? await this.sendSquadsIxs(ixs)
|
|
417
|
+
: await this.buildAndSendIx(ixs);
|
|
314
418
|
} catch (err) {
|
|
315
419
|
console.log(`Failed to claim liqSOL rewards on Solana: ${err}`);
|
|
316
420
|
throw err;
|
|
@@ -320,13 +424,17 @@ export class SolanaStakingClient implements IStakingClient {
|
|
|
320
424
|
/**
|
|
321
425
|
* Stake liqSOL into Outpost (liqSOL → pool) via liqsol_core::synd.
|
|
322
426
|
*/
|
|
323
|
-
async stake(amountLamports: bigint): Promise<string> {
|
|
427
|
+
async stake(amountLamports: bigint, wireAccount?: string): Promise<string> {
|
|
324
428
|
this.ensureUser();
|
|
325
429
|
if (!amountLamports || amountLamports <= BigInt(0))
|
|
326
430
|
throw new Error('Stake amount must be greater than zero.');
|
|
327
431
|
|
|
328
432
|
try {
|
|
329
|
-
const ix = await this.outpostClient.buildStakeIx(
|
|
433
|
+
const ix = await this.outpostClient.buildStakeIx(
|
|
434
|
+
amountLamports,
|
|
435
|
+
this.squadsVaultPDA,
|
|
436
|
+
wireAccount,
|
|
437
|
+
)
|
|
330
438
|
return !!this.squadsX
|
|
331
439
|
? await this.sendSquadsIxs(ix)
|
|
332
440
|
: await this.buildAndSendIx(ix)
|
|
@@ -346,10 +454,12 @@ export class SolanaStakingClient implements IStakingClient {
|
|
|
346
454
|
throw new Error('Unstake amount must be greater than zero.');
|
|
347
455
|
|
|
348
456
|
try {
|
|
457
|
+
const owner = this.squadsVaultPDA ?? this.anchor.wallet.publicKey;
|
|
349
458
|
const ix = await this.outpostClient.buildUnstakeIx(amountLamports, this.squadsVaultPDA)
|
|
459
|
+
const ixs = await this.prependLiqsolDestinationAtaIx(ix, owner);
|
|
350
460
|
return !!this.squadsX
|
|
351
|
-
? await this.sendSquadsIxs(
|
|
352
|
-
: await this.buildAndSendIx(
|
|
461
|
+
? await this.sendSquadsIxs(ixs)
|
|
462
|
+
: await this.buildAndSendIx(ixs)
|
|
353
463
|
}
|
|
354
464
|
catch (err) {
|
|
355
465
|
console.log(`Failed to unstake Solana: ${err}`);
|
|
@@ -381,7 +491,7 @@ export class SolanaStakingClient implements IStakingClient {
|
|
|
381
491
|
}
|
|
382
492
|
|
|
383
493
|
/** Deposit SOL to liqSOL, then syndicate that liqSOL in one transaction. Requires enough SOL for the deposit fee. */
|
|
384
|
-
async depositAndStake(amountLamports: bigint): Promise<string> {
|
|
494
|
+
async depositAndStake(amountLamports: bigint, wireAccount?: string): Promise<string> {
|
|
385
495
|
this.ensureUser();
|
|
386
496
|
if (!amountLamports || amountLamports <= BigInt(0))
|
|
387
497
|
throw new Error('Amount must be greater than zero.');
|
|
@@ -389,7 +499,11 @@ export class SolanaStakingClient implements IStakingClient {
|
|
|
389
499
|
try {
|
|
390
500
|
const user = this.squadsVaultPDA ?? this.anchor.wallet.publicKey;
|
|
391
501
|
const depositIx = await this.convertClient.buildDepositTx(amountLamports, user);
|
|
392
|
-
const stakeIx = await this.outpostClient.buildStakeIx(
|
|
502
|
+
const stakeIx = await this.outpostClient.buildStakeIx(
|
|
503
|
+
amountLamports,
|
|
504
|
+
user,
|
|
505
|
+
wireAccount,
|
|
506
|
+
);
|
|
393
507
|
|
|
394
508
|
return !!this.squadsX
|
|
395
509
|
? await this.sendSquadsIxs([depositIx, stakeIx])
|
|
@@ -430,10 +544,11 @@ export class SolanaStakingClient implements IStakingClient {
|
|
|
430
544
|
const user = this.squadsVaultPDA ?? this.anchor.wallet.publicKey;
|
|
431
545
|
const unstakeIx = await this.outpostClient.buildUnstakeIx(amountLamports, user);
|
|
432
546
|
const withdrawIx = await this.convertClient.buildWithdrawTx(amountLamports, user);
|
|
547
|
+
const ixs = await this.prependLiqsolDestinationAtaIx([unstakeIx, withdrawIx], user);
|
|
433
548
|
|
|
434
549
|
return !!this.squadsX
|
|
435
|
-
? await this.sendSquadsIxs(
|
|
436
|
-
: await this.buildAndSendIx(
|
|
550
|
+
? await this.sendSquadsIxs(ixs)
|
|
551
|
+
: await this.buildAndSendIx(ixs);
|
|
437
552
|
} catch (err) {
|
|
438
553
|
console.log(`Failed to unstake and withdraw: ${err}`);
|
|
439
554
|
throw err;
|
|
@@ -857,6 +972,21 @@ export class SolanaStakingClient implements IStakingClient {
|
|
|
857
972
|
// }
|
|
858
973
|
}
|
|
859
974
|
|
|
975
|
+
private isLegacyUserRecordMigrationRequired(error: unknown): boolean {
|
|
976
|
+
const message = error instanceof Error ? error.message : String(error ?? '');
|
|
977
|
+
const normalized = message.toLowerCase();
|
|
978
|
+
return normalized.includes('legacyuserrecordmigrationrequired')
|
|
979
|
+
|| normalized.includes('legacy user record must be migrated')
|
|
980
|
+
|| normalized.includes('custom program error: 0x1784');
|
|
981
|
+
}
|
|
982
|
+
|
|
983
|
+
private isAtaAlreadyCreatedError(error: unknown): boolean {
|
|
984
|
+
const message = error instanceof Error ? error.message : String(error ?? '');
|
|
985
|
+
const normalized = message.toLowerCase();
|
|
986
|
+
return normalized.includes('already in use')
|
|
987
|
+
|| normalized.includes('already exists');
|
|
988
|
+
}
|
|
989
|
+
|
|
860
990
|
// ---------------------------------------------------------------------
|
|
861
991
|
// READ-ONLY Public Methods
|
|
862
992
|
// ---------------------------------------------------------------------
|
|
@@ -924,7 +1054,7 @@ export class SolanaStakingClient implements IStakingClient {
|
|
|
924
1054
|
* de-scaled using PAY_RATE_SCALE_FACTOR (1e12).
|
|
925
1055
|
*/
|
|
926
1056
|
private async getEpochRateDecimalFromProgram(): Promise<number> {
|
|
927
|
-
const liqSolCoreProgram = this.program.getProgram('liqsolCore');
|
|
1057
|
+
const liqSolCoreProgram: any = this.program.getProgram('liqsolCore');
|
|
928
1058
|
const payRateHistoryPda = this.program.derivePayRateHistoryPda();
|
|
929
1059
|
|
|
930
1060
|
const payRateHistory =
|
|
@@ -644,11 +644,10 @@ export type LeaderboardState = {
|
|
|
644
644
|
bump: number; // u8 on-chain
|
|
645
645
|
|
|
646
646
|
/**
|
|
647
|
-
* !DEPRECATED - to be removed
|
|
648
647
|
* Reserved padding / future-proofing on-chain (u64[8]).
|
|
649
648
|
* Not used by client logic, but surfaced for completeness.
|
|
650
649
|
*/
|
|
651
|
-
|
|
650
|
+
padding: number[];
|
|
652
651
|
};
|
|
653
652
|
|
|
654
653
|
/**
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { Program, BN, AnchorProvider } from '@coral-xyz/anchor';
|
|
2
|
-
|
|
3
2
|
import {
|
|
4
3
|
Connection,
|
|
5
4
|
Keypair,
|
|
@@ -19,7 +18,6 @@ import {
|
|
|
19
18
|
CHAINLINK_PROGRAM,
|
|
20
19
|
} from './constants';
|
|
21
20
|
|
|
22
|
-
import { LiqsolCore } from '../../assets/solana/devnet/types/liqsol_core';
|
|
23
21
|
import { GlobalState, TrancheState } from './types';
|
|
24
22
|
import { TrancheLadderItem, TrancheSnapshot } from '../../types';
|
|
25
23
|
import { ChainID } from '@wireio/core';
|
|
@@ -281,6 +279,15 @@ export interface OutpostAccounts {
|
|
|
281
279
|
|
|
282
280
|
// New
|
|
283
281
|
pretokenPurchaseHistory: PublicKey;
|
|
282
|
+
|
|
283
|
+
// OPP (outpost protocol pipeline)
|
|
284
|
+
globalConfig: PublicKey;
|
|
285
|
+
oppEpochState: PublicKey;
|
|
286
|
+
pendingAttestations: PublicKey;
|
|
287
|
+
bridgeState: PublicKey;
|
|
288
|
+
bridgeAuthority: PublicKey;
|
|
289
|
+
bridgeVaultAta: PublicKey;
|
|
290
|
+
bridgeUserRecord: PublicKey;
|
|
284
291
|
}
|
|
285
292
|
|
|
286
293
|
export async function buildOutpostAccounts(
|
|
@@ -330,12 +337,30 @@ export async function buildOutpostAccounts(
|
|
|
330
337
|
|
|
331
338
|
const pretokenPurchaseHistory = pgs.derivePretokenPurchaseHistoryPda(poolAuthority);
|
|
332
339
|
|
|
340
|
+
// OPP (outpost protocol pipeline)
|
|
341
|
+
const globalConfig = pgs.deriveGlobalConfigPda();
|
|
342
|
+
const oppEpochState = pgs.deriveOppEpochStatePda();
|
|
343
|
+
const epochNumber = await pgs.fetchOppEpochNumber(connection);
|
|
344
|
+
const pendingAttestations = pgs.derivePendingAttestationsPda(epochNumber);
|
|
345
|
+
const bridgeState = pgs.deriveOppBridgeStatePda();
|
|
346
|
+
const bridgeAuthority = PublicKey.findProgramAddressSync(
|
|
347
|
+
[Buffer.from('opp_bridge_vault')],
|
|
348
|
+
pgs.PROGRAM_IDS.LIQSOL_CORE,
|
|
349
|
+
)[0];
|
|
350
|
+
const bridgeVaultAta = await getAssociatedTokenAddress(
|
|
351
|
+
liqsolMint,
|
|
352
|
+
bridgeAuthority,
|
|
353
|
+
true,
|
|
354
|
+
TOKEN_2022_PROGRAM_ID,
|
|
355
|
+
);
|
|
356
|
+
const bridgeUserRecord = pgs.deriveUserRecordPda(bridgeVaultAta);
|
|
357
|
+
|
|
333
358
|
// Chainlink program feeds
|
|
334
359
|
let chainLinkFeed = CHAINLINK_FEED;
|
|
335
360
|
let chainLinkProgram = CHAINLINK_PROGRAM;
|
|
336
361
|
|
|
337
362
|
try {
|
|
338
|
-
const program = pgs.getProgram('liqsolCore');
|
|
363
|
+
const program: any = pgs.getProgram('liqsolCore');
|
|
339
364
|
const ts: TrancheState =
|
|
340
365
|
await program.account.trancheState.fetch(trancheState);
|
|
341
366
|
|
|
@@ -371,7 +396,14 @@ export async function buildOutpostAccounts(
|
|
|
371
396
|
chainLinkFeed,
|
|
372
397
|
chainLinkProgram,
|
|
373
398
|
extraAccountMetaList,
|
|
374
|
-
pretokenPurchaseHistory
|
|
399
|
+
pretokenPurchaseHistory,
|
|
400
|
+
globalConfig,
|
|
401
|
+
oppEpochState,
|
|
402
|
+
pendingAttestations,
|
|
403
|
+
bridgeState,
|
|
404
|
+
bridgeAuthority,
|
|
405
|
+
bridgeVaultAta,
|
|
406
|
+
bridgeUserRecord,
|
|
375
407
|
};
|
|
376
408
|
}
|
|
377
409
|
// -----------------------------------------------------------------------------
|
package/src/staker.ts
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import { ChainID, EvmChainID, SolChainID } from '@wireio/core';
|
|
1
|
+
import { ChainID } from '@wireio/core';
|
|
2
|
+
import { getSdkChainConfig } from './chains';
|
|
4
3
|
import { IStakingClient, StakerConfig } from './types';
|
|
5
4
|
import { SolanaStakingClient } from './networks/solana/solana';
|
|
6
|
-
import {
|
|
5
|
+
import { EvmStakingClient } from './networks/evm/evm';
|
|
7
6
|
|
|
8
7
|
export class Staker {
|
|
9
8
|
public selectedChainID?: ChainID;
|
|
@@ -32,24 +31,27 @@ export class Staker {
|
|
|
32
31
|
if (!config) throw new Error('StakerConfig is required');
|
|
33
32
|
if (!Array.isArray(config)) config = [config];
|
|
34
33
|
|
|
35
|
-
// console.log('STAKER INIT', config);
|
|
36
|
-
|
|
37
34
|
config.forEach((cfg) => {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
break;
|
|
35
|
+
const chain = getSdkChainConfig(cfg.network.chainId);
|
|
36
|
+
if (!chain) {
|
|
37
|
+
throw new Error(`Unsupported SDK chain: ${cfg.network.name} (${cfg.network.chainId})`);
|
|
38
|
+
}
|
|
43
39
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
break;
|
|
40
|
+
if (!chain.capabilities.staking) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
48
43
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
44
|
+
if (chain.family === 'solana') {
|
|
45
|
+
this.clients.set(cfg.network.chainId, new SolanaStakingClient(cfg));
|
|
46
|
+
return;
|
|
52
47
|
}
|
|
48
|
+
|
|
49
|
+
if (chain.family === 'evm') {
|
|
50
|
+
this.clients.set(cfg.network.chainId, new EvmStakingClient(cfg));
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
throw new Error(`Unsupported SDK chain family: ${chain.family}`);
|
|
53
55
|
});
|
|
54
56
|
|
|
55
57
|
this.selectedChainID = selectedChainID;
|
|
@@ -61,13 +63,13 @@ export class Staker {
|
|
|
61
63
|
*/
|
|
62
64
|
setChain(chainID: ChainID): boolean {
|
|
63
65
|
const hasClient = this.clients.has(chainID);
|
|
66
|
+
this.selectedChainID = chainID;
|
|
64
67
|
|
|
65
68
|
if (!hasClient) {
|
|
66
69
|
console.warn(`[Staker] setChain: no client configured for chain ${chainID}`);
|
|
67
70
|
return false;
|
|
68
71
|
}
|
|
69
72
|
|
|
70
|
-
this.selectedChainID = chainID;
|
|
71
73
|
return true;
|
|
72
74
|
}
|
|
73
|
-
}
|
|
75
|
+
}
|