@pufferfinance/puffer-sdk 1.28.1 → 1.28.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/puffer-client-helpers.cjs +1 -1
- package/dist/api/puffer-client-helpers.cjs.map +1 -1
- package/dist/api/puffer-client-helpers.js +7 -7
- package/dist/api/puffer-client-helpers.js.map +1 -1
- package/dist/api/puffer-client.cjs +1 -1
- package/dist/api/puffer-client.cjs.map +1 -1
- package/dist/api/puffer-client.js +119 -122
- package/dist/api/puffer-client.js.map +1 -1
- package/dist/ccip-78YM988s.js +150 -0
- package/dist/{ccip-C76-YhQK.js.map → ccip-78YM988s.js.map} +1 -1
- package/dist/ccip-LIGR3N1A.cjs +2 -0
- package/dist/{ccip-CEodLZ4s.cjs.map → ccip-LIGR3N1A.cjs.map} +1 -1
- package/dist/chains/constants.cjs +1 -1
- package/dist/chains/constants.js +1 -1
- package/dist/constants-6kuRTsbU.cjs +9 -0
- package/dist/{constants-CxSgz27h.cjs.map → constants-6kuRTsbU.cjs.map} +1 -1
- package/dist/{constants-C9YZ6Ewc.js → constants-CuIEh_ZS.js} +605 -656
- package/dist/{constants-C9YZ6Ewc.js.map → constants-CuIEh_ZS.js.map} +1 -1
- package/dist/contracts/abis/mainnet/Accountant.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/Accountant.js.map +1 -1
- package/dist/contracts/abis/mainnet/AtomicQueue.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/AtomicQueue.js.map +1 -1
- package/dist/contracts/abis/mainnet/BoringVault.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/BoringVault.js.map +1 -1
- package/dist/contracts/abis/mainnet/CarrotStaker.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/CarrotStaker.js.map +1 -1
- package/dist/contracts/abis/mainnet/CarrotVesting.cjs +1 -1
- package/dist/contracts/abis/mainnet/CarrotVesting.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/CarrotVesting.d.ts +84 -92
- package/dist/contracts/abis/mainnet/CarrotVesting.js +56 -62
- package/dist/contracts/abis/mainnet/CarrotVesting.js.map +1 -1
- package/dist/contracts/abis/mainnet/ConcreteMultiStrategyVault.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/ConcreteMultiStrategyVault.js.map +1 -1
- package/dist/contracts/abis/mainnet/Distributor.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/Distributor.js.map +1 -1
- package/dist/contracts/abis/mainnet/ERC20Permit.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/ERC20Permit.js.map +1 -1
- package/dist/contracts/abis/mainnet/GaugeRegistry.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/GaugeRegistry.js.map +1 -1
- package/dist/contracts/abis/mainnet/GuardianModule.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/GuardianModule.js.map +1 -1
- package/dist/contracts/abis/mainnet/InstitutionalAccessManager.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/InstitutionalAccessManager.js.map +1 -1
- package/dist/contracts/abis/mainnet/InstitutionalVault.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/InstitutionalVault.js.map +1 -1
- package/dist/contracts/abis/mainnet/L1RewardManager.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/L1RewardManager.js.map +1 -1
- package/dist/contracts/abis/mainnet/L2RewardManager.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/L2RewardManager.js.map +1 -1
- package/dist/contracts/abis/mainnet/LagoonVault.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/LagoonVault.js.map +1 -1
- package/dist/contracts/abis/mainnet/PufLocker.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/PufLocker.js.map +1 -1
- package/dist/contracts/abis/mainnet/PufferDepositor.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/PufferDepositor.js.map +1 -1
- package/dist/contracts/abis/mainnet/PufferL2Depositor.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/PufferL2Depositor.js.map +1 -1
- package/dist/contracts/abis/mainnet/PufferOracleV2.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/PufferOracleV2.js.map +1 -1
- package/dist/contracts/abis/mainnet/PufferProtocol.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/PufferProtocol.js.map +1 -1
- package/dist/contracts/abis/mainnet/PufferVaultV5.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/PufferVaultV5.js.map +1 -1
- package/dist/contracts/abis/mainnet/PufferWithdrawalManager.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/PufferWithdrawalManager.js.map +1 -1
- package/dist/contracts/abis/mainnet/Teller.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/Teller.js.map +1 -1
- package/dist/contracts/abis/mainnet/ValidatorTicket.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/ValidatorTicket.js.map +1 -1
- package/dist/contracts/abis/mainnet/mtwCARROT.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/mtwCARROT.js.map +1 -1
- package/dist/contracts/abis/mainnet/vlPUFFER.cjs.map +1 -1
- package/dist/contracts/abis/mainnet/vlPUFFER.js.map +1 -1
- package/dist/contracts/addresses.cjs +1 -1
- package/dist/contracts/addresses.cjs.map +1 -1
- package/dist/contracts/addresses.js +5 -5
- package/dist/contracts/addresses.js.map +1 -1
- package/dist/contracts/handlers/carrot-staking-handler.cjs +1 -1
- package/dist/contracts/handlers/carrot-staking-handler.cjs.map +1 -1
- package/dist/contracts/handlers/carrot-staking-handler.d.ts +96 -6599
- package/dist/contracts/handlers/carrot-staking-handler.js +13 -16
- package/dist/contracts/handlers/carrot-staking-handler.js.map +1 -1
- package/dist/contracts/handlers/carrot-vesting-handler.cjs +1 -1
- package/dist/contracts/handlers/carrot-vesting-handler.cjs.map +1 -1
- package/dist/contracts/handlers/carrot-vesting-handler.d.ts +102 -6605
- package/dist/contracts/handlers/carrot-vesting-handler.js +25 -39
- package/dist/contracts/handlers/carrot-vesting-handler.js.map +1 -1
- package/dist/contracts/handlers/concrete-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/concrete-vault-handler.cjs.map +1 -1
- package/dist/contracts/handlers/concrete-vault-handler.d.ts +96 -6599
- package/dist/contracts/handlers/concrete-vault-handler.js +15 -18
- package/dist/contracts/handlers/concrete-vault-handler.js.map +1 -1
- package/dist/contracts/handlers/distributor-handler.cjs +1 -1
- package/dist/contracts/handlers/distributor-handler.cjs.map +1 -1
- package/dist/contracts/handlers/distributor-handler.d.ts +96 -6599
- package/dist/contracts/handlers/distributor-handler.js +15 -18
- package/dist/contracts/handlers/distributor-handler.js.map +1 -1
- package/dist/contracts/handlers/erc20-permit-handler.cjs +1 -1
- package/dist/contracts/handlers/erc20-permit-handler.cjs.map +1 -1
- package/dist/contracts/handlers/erc20-permit-handler.d.ts +96 -6599
- package/dist/contracts/handlers/erc20-permit-handler.js +34 -38
- package/dist/contracts/handlers/erc20-permit-handler.js.map +1 -1
- package/dist/contracts/handlers/gauge-registry-handler.cjs +1 -1
- package/dist/contracts/handlers/gauge-registry-handler.cjs.map +1 -1
- package/dist/contracts/handlers/gauge-registry-handler.d.ts +96 -6599
- package/dist/contracts/handlers/gauge-registry-handler.js +11 -14
- package/dist/contracts/handlers/gauge-registry-handler.js.map +1 -1
- package/dist/contracts/handlers/guardian-module-handler.cjs +1 -1
- package/dist/contracts/handlers/guardian-module-handler.cjs.map +1 -1
- package/dist/contracts/handlers/guardian-module-handler.d.ts +96 -6599
- package/dist/contracts/handlers/guardian-module-handler.js +11 -14
- package/dist/contracts/handlers/guardian-module-handler.js.map +1 -1
- package/dist/contracts/handlers/institutional-access-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/institutional-access-manager-handler.cjs.map +1 -1
- package/dist/contracts/handlers/institutional-access-manager-handler.d.ts +96 -6599
- package/dist/contracts/handlers/institutional-access-manager-handler.js +45 -50
- package/dist/contracts/handlers/institutional-access-manager-handler.js.map +1 -1
- package/dist/contracts/handlers/institutional-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/institutional-vault-handler.cjs.map +1 -1
- package/dist/contracts/handlers/institutional-vault-handler.d.ts +96 -6599
- package/dist/contracts/handlers/institutional-vault-handler.js +16 -19
- package/dist/contracts/handlers/institutional-vault-handler.js.map +1 -1
- package/dist/contracts/handlers/l1-reward-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/l1-reward-manager-handler.cjs.map +1 -1
- package/dist/contracts/handlers/l1-reward-manager-handler.d.ts +96 -6599
- package/dist/contracts/handlers/l1-reward-manager-handler.js +14 -17
- package/dist/contracts/handlers/l1-reward-manager-handler.js.map +1 -1
- package/dist/contracts/handlers/l2-reward-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/l2-reward-manager-handler.cjs.map +1 -1
- package/dist/contracts/handlers/l2-reward-manager-handler.d.ts +96 -6599
- package/dist/contracts/handlers/l2-reward-manager-handler.js +13 -16
- package/dist/contracts/handlers/l2-reward-manager-handler.js.map +1 -1
- package/dist/contracts/handlers/lagoon-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/lagoon-vault-handler.cjs.map +1 -1
- package/dist/contracts/handlers/lagoon-vault-handler.d.ts +96 -6599
- package/dist/contracts/handlers/lagoon-vault-handler.js +11 -14
- package/dist/contracts/handlers/lagoon-vault-handler.js.map +1 -1
- package/dist/contracts/handlers/mtw-carrot-handler.cjs +1 -1
- package/dist/contracts/handlers/mtw-carrot-handler.cjs.map +1 -1
- package/dist/contracts/handlers/mtw-carrot-handler.d.ts +96 -6599
- package/dist/contracts/handlers/mtw-carrot-handler.js +12 -15
- package/dist/contracts/handlers/mtw-carrot-handler.js.map +1 -1
- package/dist/contracts/handlers/nucleus-accountant-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-accountant-handler.cjs.map +1 -1
- package/dist/contracts/handlers/nucleus-accountant-handler.d.ts +96 -6599
- package/dist/contracts/handlers/nucleus-accountant-handler.js +13 -16
- package/dist/contracts/handlers/nucleus-accountant-handler.js.map +1 -1
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.cjs.map +1 -1
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.d.ts +96 -6599
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.js +14 -17
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.js.map +1 -1
- package/dist/contracts/handlers/nucleus-boring-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-boring-vault-handler.cjs.map +1 -1
- package/dist/contracts/handlers/nucleus-boring-vault-handler.d.ts +96 -6599
- package/dist/contracts/handlers/nucleus-boring-vault-handler.js +18 -21
- package/dist/contracts/handlers/nucleus-boring-vault-handler.js.map +1 -1
- package/dist/contracts/handlers/nucleus-teller-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-teller-handler.cjs.map +1 -1
- package/dist/contracts/handlers/nucleus-teller-handler.d.ts +96 -6599
- package/dist/contracts/handlers/nucleus-teller-handler.js +35 -38
- package/dist/contracts/handlers/nucleus-teller-handler.js.map +1 -1
- package/dist/contracts/handlers/puf-locker-handler.cjs +1 -1
- package/dist/contracts/handlers/puf-locker-handler.cjs.map +1 -1
- package/dist/contracts/handlers/puf-locker-handler.d.ts +96 -6599
- package/dist/contracts/handlers/puf-locker-handler.js +51 -54
- package/dist/contracts/handlers/puf-locker-handler.js.map +1 -1
- package/dist/contracts/handlers/puffer-depositor-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-depositor-handler.cjs.map +1 -1
- package/dist/contracts/handlers/puffer-depositor-handler.d.ts +96 -6599
- package/dist/contracts/handlers/puffer-depositor-handler.js +28 -31
- package/dist/contracts/handlers/puffer-depositor-handler.js.map +1 -1
- package/dist/contracts/handlers/puffer-l2-depositor-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-l2-depositor-handler.cjs.map +1 -1
- package/dist/contracts/handlers/puffer-l2-depositor-handler.d.ts +96 -6599
- package/dist/contracts/handlers/puffer-l2-depositor-handler.js +42 -45
- package/dist/contracts/handlers/puffer-l2-depositor-handler.js.map +1 -1
- package/dist/contracts/handlers/puffer-oracle-v2-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-oracle-v2-handler.cjs.map +1 -1
- package/dist/contracts/handlers/puffer-oracle-v2-handler.d.ts +96 -6599
- package/dist/contracts/handlers/puffer-oracle-v2-handler.js +13 -16
- package/dist/contracts/handlers/puffer-oracle-v2-handler.js.map +1 -1
- package/dist/contracts/handlers/puffer-protocol-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-protocol-handler.cjs.map +1 -1
- package/dist/contracts/handlers/puffer-protocol-handler.d.ts +96 -6599
- package/dist/contracts/handlers/puffer-protocol-handler.js +12 -15
- package/dist/contracts/handlers/puffer-protocol-handler.js.map +1 -1
- package/dist/contracts/handlers/puffer-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-vault-handler.cjs.map +1 -1
- package/dist/contracts/handlers/puffer-vault-handler.d.ts +96 -6599
- package/dist/contracts/handlers/puffer-vault-handler.js +12 -15
- package/dist/contracts/handlers/puffer-vault-handler.js.map +1 -1
- package/dist/contracts/handlers/puffer-withdrawal-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-withdrawal-manager-handler.cjs.map +1 -1
- package/dist/contracts/handlers/puffer-withdrawal-manager-handler.d.ts +96 -6599
- package/dist/contracts/handlers/puffer-withdrawal-manager-handler.js +15 -18
- package/dist/contracts/handlers/puffer-withdrawal-manager-handler.js.map +1 -1
- package/dist/contracts/handlers/validator-ticket-handler.cjs +1 -1
- package/dist/contracts/handlers/validator-ticket-handler.cjs.map +1 -1
- package/dist/contracts/handlers/validator-ticket-handler.d.ts +96 -6599
- package/dist/contracts/handlers/validator-ticket-handler.js +12 -15
- package/dist/contracts/handlers/validator-ticket-handler.js.map +1 -1
- package/dist/contracts/handlers/vl-puffer-handler.cjs +1 -1
- package/dist/contracts/handlers/vl-puffer-handler.cjs.map +1 -1
- package/dist/contracts/handlers/vl-puffer-handler.d.ts +96 -6599
- package/dist/contracts/handlers/vl-puffer-handler.js +19 -22
- package/dist/contracts/handlers/vl-puffer-handler.js.map +1 -1
- package/dist/contracts/tokens.cjs +1 -1
- package/dist/contracts/tokens.cjs.map +1 -1
- package/dist/contracts/tokens.js +1 -1
- package/dist/contracts/tokens.js.map +1 -1
- package/dist/contracts/vaults-addresses.cjs +1 -1
- package/dist/contracts/vaults-addresses.cjs.map +1 -1
- package/dist/contracts/vaults-addresses.js +1 -1
- package/dist/contracts/vaults-addresses.js.map +1 -1
- package/dist/errors/base-error.cjs.map +1 -1
- package/dist/errors/base-error.js.map +1 -1
- package/dist/{getContract-DUA3M2pm.cjs → getContract-D4_SEfqa.cjs} +2 -2
- package/dist/{getContract-DUA3M2pm.cjs.map → getContract-D4_SEfqa.cjs.map} +1 -1
- package/dist/{getContract-DEPNMZxg.js → getContract-DQN7VDBo.js} +2 -2
- package/dist/{getContract-DEPNMZxg.js.map → getContract-DQN7VDBo.js.map} +1 -1
- package/dist/http-CajzXkt4.js +4005 -0
- package/dist/http-CajzXkt4.js.map +1 -0
- package/dist/http-qhIDc8Dn.cjs +5 -0
- package/dist/http-qhIDc8Dn.cjs.map +1 -0
- package/dist/{localBatchGatewayRequest-CKLnLqib.cjs → localBatchGatewayRequest-C7zYTS2c.cjs} +2 -2
- package/dist/{localBatchGatewayRequest-CKLnLqib.cjs.map → localBatchGatewayRequest-C7zYTS2c.cjs.map} +1 -1
- package/dist/{localBatchGatewayRequest-C0QtijkB.js → localBatchGatewayRequest-DtOvBmA9.js} +3 -3
- package/dist/{localBatchGatewayRequest-C0QtijkB.js.map → localBatchGatewayRequest-DtOvBmA9.js.map} +1 -1
- package/dist/main.cjs +1 -1
- package/dist/main.js +1 -1
- package/dist/secp256k1-CMP_u7qb.cjs +2 -0
- package/dist/secp256k1-CMP_u7qb.cjs.map +1 -0
- package/dist/secp256k1-DCMgMsfV.js +1297 -0
- package/dist/secp256k1-DCMgMsfV.js.map +1 -0
- package/dist/utils/time.cjs.map +1 -1
- package/dist/utils/time.js.map +1 -1
- package/dist/utils/version.cjs +1 -1
- package/dist/utils/version.js +1 -1
- package/dist/writeContract-BnmmOPwy.cjs +36 -0
- package/dist/writeContract-BnmmOPwy.cjs.map +1 -0
- package/dist/{writeContract-DkC9wV5p.js → writeContract-DYAfDrRz.js} +1788 -1712
- package/dist/writeContract-DYAfDrRz.js.map +1 -0
- package/package.json +8 -8
- package/dist/ccip-C76-YhQK.js +0 -152
- package/dist/ccip-CEodLZ4s.cjs +0 -2
- package/dist/constants-CxSgz27h.cjs +0 -9
- package/dist/createWalletClient-Cct6ojqI.cjs +0 -5
- package/dist/createWalletClient-Cct6ojqI.cjs.map +0 -1
- package/dist/createWalletClient-DAuQCrLq.js +0 -3262
- package/dist/createWalletClient-DAuQCrLq.js.map +0 -1
- package/dist/secp256k1-ClOw2ksU.js +0 -1291
- package/dist/secp256k1-ClOw2ksU.js.map +0 -1
- package/dist/secp256k1-YUzyTLhP.cjs +0 -2
- package/dist/secp256k1-YUzyTLhP.cjs.map +0 -1
- package/dist/writeContract-BfAYISeL.cjs +0 -36
- package/dist/writeContract-BfAYISeL.cjs.map +0 -1
- package/dist/writeContract-DkC9wV5p.js.map +0 -1
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
import { PufferWithdrawalManager as w } from "../abis/mainnet/PufferWithdrawalManager.js";
|
|
9
|
-
import { g as C } from "../../getContract-DEPNMZxg.js";
|
|
10
|
-
class H {
|
|
1
|
+
import { CONTRACT_ADDRESSES as r } from "../addresses.js";
|
|
2
|
+
import { V as n } from "../../constants-CuIEh_ZS.js";
|
|
3
|
+
import { ERC20PermitHandler as c } from "./erc20-permit-handler.js";
|
|
4
|
+
import { Token as s } from "../tokens.js";
|
|
5
|
+
import { PufferWithdrawalManager as h } from "../abis/mainnet/PufferWithdrawalManager.js";
|
|
6
|
+
import { g as o } from "../../getContract-DQN7VDBo.js";
|
|
7
|
+
class p {
|
|
11
8
|
/**
|
|
12
9
|
* Create the handler for the `PufferWithdrawalsManager` contract exposing
|
|
13
10
|
* methods to interact with the contract.
|
|
@@ -19,22 +16,22 @@ class H {
|
|
|
19
16
|
* interactions.
|
|
20
17
|
*/
|
|
21
18
|
constructor(t, a, i) {
|
|
22
|
-
|
|
23
|
-
r(this, "erc20PermitHandler");
|
|
24
|
-
this.chain = t, this.walletClient = a, this.publicClient = i, this.viemChain = o[t], this.erc20PermitHandler = new m(
|
|
19
|
+
this.chain = t, this.walletClient = a, this.publicClient = i, this.viemChain = n[t], this.erc20PermitHandler = new c(
|
|
25
20
|
t,
|
|
26
21
|
a,
|
|
27
22
|
i
|
|
28
23
|
);
|
|
29
24
|
}
|
|
25
|
+
viemChain;
|
|
26
|
+
erc20PermitHandler;
|
|
30
27
|
/**
|
|
31
28
|
* Get the contract.
|
|
32
29
|
*
|
|
33
30
|
* @returns The viem contract.
|
|
34
31
|
*/
|
|
35
32
|
getContract() {
|
|
36
|
-
const t =
|
|
37
|
-
return
|
|
33
|
+
const t = r[this.chain].PufferWithdrawalManager, a = h, i = { public: this.publicClient, wallet: this.walletClient };
|
|
34
|
+
return o({ address: t, abi: a, client: i });
|
|
38
35
|
}
|
|
39
36
|
/**
|
|
40
37
|
* Request a withdrawal of the given amount to the given address, with a permit.
|
|
@@ -63,9 +60,9 @@ class H {
|
|
|
63
60
|
* @returns The transaction hash of the withdrawal.
|
|
64
61
|
*/
|
|
65
62
|
async requestWithdrawalWithPermit(t, a) {
|
|
66
|
-
const i = await this.erc20PermitHandler.withToken(
|
|
63
|
+
const i = await this.erc20PermitHandler.withToken(s.pufETH).getPermitData(
|
|
67
64
|
t,
|
|
68
|
-
|
|
65
|
+
r[this.chain].PufferWithdrawalManager,
|
|
69
66
|
a
|
|
70
67
|
);
|
|
71
68
|
return { transact: async () => await this.getContract().write.requestWithdrawalWithPermit(
|
|
@@ -105,6 +102,6 @@ class H {
|
|
|
105
102
|
}
|
|
106
103
|
}
|
|
107
104
|
export {
|
|
108
|
-
|
|
105
|
+
p as PufferWithdrawalManagerHandler
|
|
109
106
|
};
|
|
110
107
|
//# sourceMappingURL=puffer-withdrawal-manager-handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"puffer-withdrawal-manager-handler.js","sources":["../../../lib/contracts/handlers/puffer-withdrawal-manager-handler.ts"],"sourcesContent":["import {\n Address,\n getContract,\n GetContractReturnType,\n PublicClient,\n WalletClient,\n} from 'viem';\nimport { CONTRACT_ADDRESSES } from '../addresses';\nimport { Chain, VIEM_CHAINS, ViemChain } from '../../chains/constants';\nimport { ERC20PermitHandler } from './erc20-permit-handler';\nimport { Token } from '../tokens';\nimport { PufferWithdrawalManager } from '../abis/mainnet/PufferWithdrawalManager';\n\n/**\n * Handler for the `PufferWithdrawalsManager` contract exposing methods to\n * interact with the contract.\n */\nexport class PufferWithdrawalManagerHandler {\n private viemChain: ViemChain;\n private erc20PermitHandler: ERC20PermitHandler;\n\n /**\n * Create the handler for the `PufferWithdrawalsManager` contract exposing\n * methods to interact with the contract.\n *\n * @param chain Chain to use for the client.\n * @param walletClient The wallet client to use for wallet\n * interactions.\n * @param publicClient The public client to use for public\n * interactions.\n */\n constructor(\n private chain: Chain,\n private walletClient: WalletClient,\n private publicClient: PublicClient,\n ) {\n this.viemChain = VIEM_CHAINS[chain];\n this.erc20PermitHandler = new ERC20PermitHandler(\n chain,\n walletClient,\n publicClient,\n );\n }\n\n /**\n * Get the contract.\n *\n * @returns The viem contract.\n */\n public getContract() {\n const address = CONTRACT_ADDRESSES[this.chain]\n .PufferWithdrawalManager as Address;\n const abi = PufferWithdrawalManager;\n const client = { public: this.publicClient, wallet: this.walletClient };\n\n return getContract({ address, abi, client }) as GetContractReturnType<\n typeof abi,\n typeof client,\n Address\n >;\n }\n\n /**\n * Request a withdrawal of the given amount to the given address, with a permit.\n *\n * @param walletAddress The account address to request the withdrawal for.\n * @param amount The pufETH amount to request the withdrawal for.\n * @returns The transaction hash of the withdrawal.\n */\n public async requestWithdrawal(walletAddress: Address, amount: bigint) {\n const transact = async () =>\n await this.getContract().write.requestWithdrawal(\n [amount, walletAddress],\n {\n account: walletAddress,\n chain: this.viemChain,\n },\n );\n\n const estimate = async () =>\n await this.getContract().estimateGas.requestWithdrawal(\n [amount, walletAddress],\n { account: walletAddress },\n );\n\n return { transact, estimate };\n }\n\n /**\n * Request a withdrawal of the given amount to the given address.\n *\n * @param walletAddress The account address to request the withdrawal for.\n * @param amount The pufETHamount to request the withdrawal for.\n * @returns The transaction hash of the withdrawal.\n */\n public async requestWithdrawalWithPermit(\n walletAddress: Address,\n amount: bigint,\n ) {\n const permitData = await this.erc20PermitHandler\n .withToken(Token.pufETH)\n .getPermitData(\n walletAddress,\n CONTRACT_ADDRESSES[this.chain].PufferWithdrawalManager as Address,\n amount,\n );\n\n const transact = async () =>\n await this.getContract().write.requestWithdrawalWithPermit(\n [permitData, walletAddress],\n {\n account: walletAddress,\n chain: this.viemChain,\n },\n );\n\n const estimate = async () =>\n await this.getContract().estimateGas.requestWithdrawalWithPermit(\n [permitData, walletAddress],\n { account: walletAddress },\n );\n\n return { transact, estimate };\n }\n\n /**\n * Complete a withdrawal from the queue.\n *\n * @param withdrawalIdx The index of the withdrawal to complete.\n * @returns The transaction hash of the withdrawal.\n */\n public async completeQueuedWithdrawal(\n walletAddress: Address,\n withdrawalIdx: bigint,\n ) {\n const transact = async () =>\n await this.getContract().write.completeQueuedWithdrawal([withdrawalIdx], {\n account: walletAddress,\n chain: this.viemChain,\n });\n\n const estimate = async () =>\n await this.getContract().estimateGas.completeQueuedWithdrawal(\n [withdrawalIdx],\n { account: walletAddress },\n );\n\n return { transact, estimate };\n }\n\n /**\n * Get the withdrawal at the given index.\n *\n * @param withdrawalIdx The index of the withdrawal to get.\n * @returns The withdrawal at the given index.\n */\n public async getWithdrawal(withdrawalIdx: bigint) {\n return await this.getContract().read.getWithdrawal([withdrawalIdx]);\n }\n}\n"],"names":["PufferWithdrawalManagerHandler","chain","walletClient","publicClient","
|
|
1
|
+
{"version":3,"file":"puffer-withdrawal-manager-handler.js","sources":["../../../lib/contracts/handlers/puffer-withdrawal-manager-handler.ts"],"sourcesContent":["import {\n Address,\n getContract,\n GetContractReturnType,\n PublicClient,\n WalletClient,\n} from 'viem';\nimport { CONTRACT_ADDRESSES } from '../addresses';\nimport { Chain, VIEM_CHAINS, ViemChain } from '../../chains/constants';\nimport { ERC20PermitHandler } from './erc20-permit-handler';\nimport { Token } from '../tokens';\nimport { PufferWithdrawalManager } from '../abis/mainnet/PufferWithdrawalManager';\n\n/**\n * Handler for the `PufferWithdrawalsManager` contract exposing methods to\n * interact with the contract.\n */\nexport class PufferWithdrawalManagerHandler {\n private viemChain: ViemChain;\n private erc20PermitHandler: ERC20PermitHandler;\n\n /**\n * Create the handler for the `PufferWithdrawalsManager` contract exposing\n * methods to interact with the contract.\n *\n * @param chain Chain to use for the client.\n * @param walletClient The wallet client to use for wallet\n * interactions.\n * @param publicClient The public client to use for public\n * interactions.\n */\n constructor(\n private chain: Chain,\n private walletClient: WalletClient,\n private publicClient: PublicClient,\n ) {\n this.viemChain = VIEM_CHAINS[chain];\n this.erc20PermitHandler = new ERC20PermitHandler(\n chain,\n walletClient,\n publicClient,\n );\n }\n\n /**\n * Get the contract.\n *\n * @returns The viem contract.\n */\n public getContract() {\n const address = CONTRACT_ADDRESSES[this.chain]\n .PufferWithdrawalManager as Address;\n const abi = PufferWithdrawalManager;\n const client = { public: this.publicClient, wallet: this.walletClient };\n\n return getContract({ address, abi, client }) as GetContractReturnType<\n typeof abi,\n typeof client,\n Address\n >;\n }\n\n /**\n * Request a withdrawal of the given amount to the given address, with a permit.\n *\n * @param walletAddress The account address to request the withdrawal for.\n * @param amount The pufETH amount to request the withdrawal for.\n * @returns The transaction hash of the withdrawal.\n */\n public async requestWithdrawal(walletAddress: Address, amount: bigint) {\n const transact = async () =>\n await this.getContract().write.requestWithdrawal(\n [amount, walletAddress],\n {\n account: walletAddress,\n chain: this.viemChain,\n },\n );\n\n const estimate = async () =>\n await this.getContract().estimateGas.requestWithdrawal(\n [amount, walletAddress],\n { account: walletAddress },\n );\n\n return { transact, estimate };\n }\n\n /**\n * Request a withdrawal of the given amount to the given address.\n *\n * @param walletAddress The account address to request the withdrawal for.\n * @param amount The pufETHamount to request the withdrawal for.\n * @returns The transaction hash of the withdrawal.\n */\n public async requestWithdrawalWithPermit(\n walletAddress: Address,\n amount: bigint,\n ) {\n const permitData = await this.erc20PermitHandler\n .withToken(Token.pufETH)\n .getPermitData(\n walletAddress,\n CONTRACT_ADDRESSES[this.chain].PufferWithdrawalManager as Address,\n amount,\n );\n\n const transact = async () =>\n await this.getContract().write.requestWithdrawalWithPermit(\n [permitData, walletAddress],\n {\n account: walletAddress,\n chain: this.viemChain,\n },\n );\n\n const estimate = async () =>\n await this.getContract().estimateGas.requestWithdrawalWithPermit(\n [permitData, walletAddress],\n { account: walletAddress },\n );\n\n return { transact, estimate };\n }\n\n /**\n * Complete a withdrawal from the queue.\n *\n * @param withdrawalIdx The index of the withdrawal to complete.\n * @returns The transaction hash of the withdrawal.\n */\n public async completeQueuedWithdrawal(\n walletAddress: Address,\n withdrawalIdx: bigint,\n ) {\n const transact = async () =>\n await this.getContract().write.completeQueuedWithdrawal([withdrawalIdx], {\n account: walletAddress,\n chain: this.viemChain,\n });\n\n const estimate = async () =>\n await this.getContract().estimateGas.completeQueuedWithdrawal(\n [withdrawalIdx],\n { account: walletAddress },\n );\n\n return { transact, estimate };\n }\n\n /**\n * Get the withdrawal at the given index.\n *\n * @param withdrawalIdx The index of the withdrawal to get.\n * @returns The withdrawal at the given index.\n */\n public async getWithdrawal(withdrawalIdx: bigint) {\n return await this.getContract().read.getWithdrawal([withdrawalIdx]);\n }\n}\n"],"names":["PufferWithdrawalManagerHandler","chain","walletClient","publicClient","VIEM_CHAINS","ERC20PermitHandler","address","CONTRACT_ADDRESSES","abi","PufferWithdrawalManager","client","getContract","walletAddress","amount","permitData","Token","withdrawalIdx"],"mappings":";;;;;;AAiBO,MAAMA,EAA+B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAc1C,YACUC,GACAC,GACAC,GACR;AAHQ,SAAA,QAAAF,GACA,KAAA,eAAAC,GACA,KAAA,eAAAC,GAER,KAAK,YAAYC,EAAYH,CAAK,GAClC,KAAK,qBAAqB,IAAII;AAAA,MAC5BJ;AAAA,MACAC;AAAA,MACAC;AAAA,IAAA;AAAA,EAEJ;AAAA,EAxBQ;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA8BD,cAAc;AACnB,UAAMG,IAAUC,EAAmB,KAAK,KAAK,EAC1C,yBACGC,IAAMC,GACNC,IAAS,EAAE,QAAQ,KAAK,cAAc,QAAQ,KAAK,aAAA;AAEzD,WAAOC,EAAY,EAAE,SAAAL,GAAS,KAAAE,GAAK,QAAAE,GAAQ;AAAA,EAK7C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAa,kBAAkBE,GAAwBC,GAAgB;AAgBrE,WAAO,EAAE,UAfQ,YACf,MAAM,KAAK,YAAA,EAAc,MAAM;AAAA,MAC7B,CAACA,GAAQD,CAAa;AAAA,MACtB;AAAA,QACE,SAASA;AAAA,QACT,OAAO,KAAK;AAAA,MAAA;AAAA,IACd,GASe,UANF,YACf,MAAM,KAAK,YAAA,EAAc,YAAY;AAAA,MACnC,CAACC,GAAQD,CAAa;AAAA,MACtB,EAAE,SAASA,EAAA;AAAA,IAAc,EAGV;AAAA,EACrB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAa,4BACXA,GACAC,GACA;AACA,UAAMC,IAAa,MAAM,KAAK,mBAC3B,UAAUC,EAAM,MAAM,EACtB;AAAA,MACCH;AAAA,MACAL,EAAmB,KAAK,KAAK,EAAE;AAAA,MAC/BM;AAAA,IAAA;AAkBJ,WAAO,EAAE,UAfQ,YACf,MAAM,KAAK,YAAA,EAAc,MAAM;AAAA,MAC7B,CAACC,GAAYF,CAAa;AAAA,MAC1B;AAAA,QACE,SAASA;AAAA,QACT,OAAO,KAAK;AAAA,MAAA;AAAA,IACd,GASe,UANF,YACf,MAAM,KAAK,YAAA,EAAc,YAAY;AAAA,MACnC,CAACE,GAAYF,CAAa;AAAA,MAC1B,EAAE,SAASA,EAAA;AAAA,IAAc,EAGV;AAAA,EACrB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAa,yBACXA,GACAI,GACA;AAaA,WAAO,EAAE,UAZQ,YACf,MAAM,KAAK,YAAA,EAAc,MAAM,yBAAyB,CAACA,CAAa,GAAG;AAAA,MACvE,SAASJ;AAAA,MACT,OAAO,KAAK;AAAA,IAAA,CACb,GAQgB,UANF,YACf,MAAM,KAAK,YAAA,EAAc,YAAY;AAAA,MACnC,CAACI,CAAa;AAAA,MACd,EAAE,SAASJ,EAAA;AAAA,IAAc,EAGV;AAAA,EACrB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAa,cAAcI,GAAuB;AAChD,WAAO,MAAM,KAAK,YAAA,EAAc,KAAK,cAAc,CAACA,CAAa,CAAC;AAAA,EACpE;AACF;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../../constants-6kuRTsbU.cjs"),s=require("../addresses.cjs"),h=require("../abis/mainnet/ValidatorTicket.cjs"),l=require("../../getContract-D4_SEfqa.cjs");class u{constructor(t,e,a){this.chain=t,this.walletClient=e,this.publicClient=a,this.viemChain=o.VIEM_CHAINS[t]}viemChain;getContract(){const t=s.CONTRACT_ADDRESSES[this.chain].ValidatorTicket,e=h.ValidatorTicket,a={public:this.publicClient,wallet:this.walletClient};return l.getContract({address:t,abi:e,client:a})}purchaseValidatorTicket(t,e){return this.getContract().write.purchaseValidatorTicket([t],{account:this.walletClient.account,chain:this.viemChain,value:e})}purchaseValidatorTicketWithPufETH(t,e){return this.getContract().write.purchaseValidatorTicketWithPufETH([t,e],{account:this.walletClient.account,chain:this.viemChain})}purchaseValidatorTicketWithPufETHAndPermit(t,e,a){return this.getContract().write.purchaseValidatorTicketWithPufETHAndPermit([t,e,a],{account:this.walletClient.account,chain:this.viemChain})}approve(t,e){return this.getContract().write.approve([t,e],{account:this.walletClient.account,chain:this.viemChain})}getAllowance(t,e){return this.getContract().read.allowance([t,e])}getBalance(t){return this.getContract().read.balanceOf([t])}getTotalSupply(){return this.getContract().read.totalSupply()}burn(t){return this.getContract().write.burn([t],{account:this.walletClient.account,chain:this.viemChain})}transfer(t,e){return this.getContract().write.transfer([t,e],{account:this.walletClient.account,chain:this.viemChain})}transferFrom(t,e,a){return this.getContract().write.transferFrom([t,e,a],{account:this.walletClient.account,chain:this.viemChain})}getGuardiansFeeRate(){return this.getContract().read.getGuardiansFeeRate()}getProtocolFeeRate(){return this.getContract().read.getProtocolFeeRate()}getDomainSeparator(){return this.getContract().read.DOMAIN_SEPARATOR()}getNonce(t){return this.getContract().read.nonces([t])}permit(t,e,a,i,r,n,c){return this.getContract().write.permit([t,e,a,i,r,n,c],{account:this.walletClient.account,chain:this.viemChain})}getEip712Domain(){return this.getContract().read.eip712Domain()}getName(){return this.getContract().read.name()}getSymbol(){return this.getContract().read.symbol()}getDecimals(){return this.getContract().read.decimals()}}exports.ValidatorTicketHandler=u;
|
|
2
2
|
//# sourceMappingURL=validator-ticket-handler.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validator-ticket-handler.cjs","sources":["../../../lib/contracts/handlers/validator-ticket-handler.ts"],"sourcesContent":["import {\n WalletClient,\n PublicClient,\n getContract,\n Address,\n GetContractReturnType,\n Account,\n} from 'viem';\nimport { Chain, VIEM_CHAINS, ViemChain } from '../../chains/constants';\nimport { CONTRACT_ADDRESSES } from '../addresses';\nimport { ValidatorTicket } from '../abis/mainnet/ValidatorTicket';\nimport { PermitData } from '../common/lib/types';\n\n/**\n * Handler for the `ValidatorTicket` contract exposing methods to interact\n * with the contract.\n */\nexport class ValidatorTicketHandler {\n private viemChain: ViemChain;\n\n /**\n * Create the handler for the `ValidatorTicket` contract exposing\n * methods to interact with the contract.\n *\n * @param chain Chain to use for the client.\n * @param walletClient The wallet client to use for wallet\n * interactions.\n * @param publicClient The public client to use for public\n * interactions.\n */\n constructor(\n private chain: Chain,\n private walletClient: WalletClient,\n private publicClient: PublicClient,\n ) {\n this.viemChain = VIEM_CHAINS[chain];\n }\n\n /**\n * Get the contract.\n *\n * @returns The viem contract.\n */\n public getContract() {\n const address = CONTRACT_ADDRESSES[this.chain].ValidatorTicket as Address;\n const abi = ValidatorTicket;\n const client = { public: this.publicClient, wallet: this.walletClient };\n\n return getContract({ address, abi, client }) as GetContractReturnType<\n typeof abi,\n typeof client,\n Address\n >;\n }\n\n /**\n * Purchase validator ticket with ETH.\n *\n * @param recipient The recipient of the validator ticket.\n * @param payableAmount The amount of ETH to send with the transaction.\n * @returns The transaction.\n */\n public purchaseValidatorTicket(recipient: Address, payableAmount: bigint) {\n return this.getContract().write.purchaseValidatorTicket([recipient], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n value: payableAmount,\n });\n }\n\n /**\n * Purchase validator ticket with pufETH.\n *\n * @param recipient The recipient of the validator ticket.\n * @param vtAmount The amount of validator tickets to purchase.\n * @returns The transaction.\n */\n public purchaseValidatorTicketWithPufETH(\n recipient: Address,\n vtAmount: bigint,\n ) {\n return this.getContract().write.purchaseValidatorTicketWithPufETH(\n [recipient, vtAmount],\n {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n },\n );\n }\n\n /**\n * Purchase validator ticket with pufETH and permit.\n *\n * @param recipient The recipient of the validator ticket.\n * @param vtAmount The amount of validator tickets to purchase.\n * @param permitData The permit data for pufETH approval.\n * @returns The transaction.\n */\n public purchaseValidatorTicketWithPufETHAndPermit(\n recipient: Address,\n vtAmount: bigint,\n permitData: PermitData,\n ) {\n return this.getContract().write.purchaseValidatorTicketWithPufETHAndPermit(\n [recipient, vtAmount, permitData],\n {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n },\n );\n }\n\n /**\n * Approve a spender to spend the validator ticket.\n *\n * @param spender The spender of the validator ticket.\n * @param amount The amount to approve.\n * @returns The transaction.\n */\n public approve(spender: Address, amount: bigint) {\n return this.getContract().write.approve([spender, amount], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Get the allowance of the owner for the spender.\n *\n * @param owner The owner of the allowance.\n * @param spender The spender of the allowance.\n * @returns The allowance.\n */\n public getAllowance(owner: Address, spender: Address) {\n return this.getContract().read.allowance([owner, spender]);\n }\n\n /**\n * Get the balance for the address.\n *\n * @param address The address to get the balance of.\n * @returns The balance.\n */\n public getBalance(address: Address) {\n return this.getContract().read.balanceOf([address]);\n }\n\n /**\n * Get the total supply of the validator ticket.\n *\n * @returns The total supply.\n */\n public getTotalSupply() {\n return this.getContract().read.totalSupply();\n }\n\n /**\n * Burn validator tickets.\n *\n * @param amount The amount to burn.\n * @returns The transaction.\n */\n public burn(amount: bigint) {\n return this.getContract().write.burn([amount], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Transfer validator tickets.\n *\n * @param to The recipient address.\n * @param amount The amount to transfer.\n * @returns The transaction.\n */\n public transfer(to: Address, amount: bigint) {\n return this.getContract().write.transfer([to, amount], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Transfer validator tickets from another address.\n *\n * @param from The sender address.\n * @param to The recipient address.\n * @param amount The amount to transfer.\n * @returns The transaction.\n */\n public transferFrom(from: Address, to: Address, amount: bigint) {\n return this.getContract().write.transferFrom([from, to, amount], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Get the guardians fee rate.\n *\n * @returns The guardians fee rate.\n */\n public getGuardiansFeeRate() {\n return this.getContract().read.getGuardiansFeeRate();\n }\n\n /**\n * Get the protocol fee rate.\n *\n * @returns The protocol fee rate.\n */\n public getProtocolFeeRate() {\n return this.getContract().read.getProtocolFeeRate();\n }\n\n /**\n * Get the domain separator for EIP-712 signatures.\n *\n * @returns The domain separator.\n */\n public getDomainSeparator() {\n return this.getContract().read.DOMAIN_SEPARATOR();\n }\n\n /**\n * Get the nonce for an owner.\n *\n * @param owner The owner address.\n * @returns The nonce.\n */\n public getNonce(owner: Address) {\n return this.getContract().read.nonces([owner]);\n }\n\n /**\n * Permit function for EIP-2612 approval.\n *\n * @param owner The owner address.\n * @param spender The spender address.\n * @param value The amount to approve.\n * @param deadline The deadline for the permit.\n * @param v The v component of the signature.\n * @param r The r component of the signature.\n * @param s The s component of the signature.\n * @returns The transaction.\n */\n public permit(\n owner: Address,\n spender: Address,\n value: bigint,\n deadline: bigint,\n v: number,\n r: Address,\n s: Address,\n ) {\n return this.getContract().write.permit(\n [owner, spender, value, deadline, v, r, s],\n {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n },\n );\n }\n\n /**\n * Get the EIP-712 domain information.\n *\n * @returns The EIP-712 domain information.\n */\n public getEip712Domain() {\n return this.getContract().read.eip712Domain();\n }\n\n /**\n * Get the name of the token.\n *\n * @returns The token name.\n */\n public getName() {\n return this.getContract().read.name();\n }\n\n /**\n * Get the symbol of the token.\n *\n * @returns The token symbol.\n */\n public getSymbol() {\n return this.getContract().read.symbol();\n }\n\n /**\n * Get the decimals of the token.\n *\n * @returns The token decimals.\n */\n public getDecimals() {\n return this.getContract().read.decimals();\n }\n}\n"],"names":["ValidatorTicketHandler","chain","walletClient","publicClient","__publicField","VIEM_CHAINS","address","CONTRACT_ADDRESSES","abi","ValidatorTicket","client","getContract","recipient","payableAmount","vtAmount","permitData","spender","amount","owner","to","from","value","deadline","v","r"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"validator-ticket-handler.cjs","sources":["../../../lib/contracts/handlers/validator-ticket-handler.ts"],"sourcesContent":["import {\n WalletClient,\n PublicClient,\n getContract,\n Address,\n GetContractReturnType,\n Account,\n} from 'viem';\nimport { Chain, VIEM_CHAINS, ViemChain } from '../../chains/constants';\nimport { CONTRACT_ADDRESSES } from '../addresses';\nimport { ValidatorTicket } from '../abis/mainnet/ValidatorTicket';\nimport { PermitData } from '../common/lib/types';\n\n/**\n * Handler for the `ValidatorTicket` contract exposing methods to interact\n * with the contract.\n */\nexport class ValidatorTicketHandler {\n private viemChain: ViemChain;\n\n /**\n * Create the handler for the `ValidatorTicket` contract exposing\n * methods to interact with the contract.\n *\n * @param chain Chain to use for the client.\n * @param walletClient The wallet client to use for wallet\n * interactions.\n * @param publicClient The public client to use for public\n * interactions.\n */\n constructor(\n private chain: Chain,\n private walletClient: WalletClient,\n private publicClient: PublicClient,\n ) {\n this.viemChain = VIEM_CHAINS[chain];\n }\n\n /**\n * Get the contract.\n *\n * @returns The viem contract.\n */\n public getContract() {\n const address = CONTRACT_ADDRESSES[this.chain].ValidatorTicket as Address;\n const abi = ValidatorTicket;\n const client = { public: this.publicClient, wallet: this.walletClient };\n\n return getContract({ address, abi, client }) as GetContractReturnType<\n typeof abi,\n typeof client,\n Address\n >;\n }\n\n /**\n * Purchase validator ticket with ETH.\n *\n * @param recipient The recipient of the validator ticket.\n * @param payableAmount The amount of ETH to send with the transaction.\n * @returns The transaction.\n */\n public purchaseValidatorTicket(recipient: Address, payableAmount: bigint) {\n return this.getContract().write.purchaseValidatorTicket([recipient], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n value: payableAmount,\n });\n }\n\n /**\n * Purchase validator ticket with pufETH.\n *\n * @param recipient The recipient of the validator ticket.\n * @param vtAmount The amount of validator tickets to purchase.\n * @returns The transaction.\n */\n public purchaseValidatorTicketWithPufETH(\n recipient: Address,\n vtAmount: bigint,\n ) {\n return this.getContract().write.purchaseValidatorTicketWithPufETH(\n [recipient, vtAmount],\n {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n },\n );\n }\n\n /**\n * Purchase validator ticket with pufETH and permit.\n *\n * @param recipient The recipient of the validator ticket.\n * @param vtAmount The amount of validator tickets to purchase.\n * @param permitData The permit data for pufETH approval.\n * @returns The transaction.\n */\n public purchaseValidatorTicketWithPufETHAndPermit(\n recipient: Address,\n vtAmount: bigint,\n permitData: PermitData,\n ) {\n return this.getContract().write.purchaseValidatorTicketWithPufETHAndPermit(\n [recipient, vtAmount, permitData],\n {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n },\n );\n }\n\n /**\n * Approve a spender to spend the validator ticket.\n *\n * @param spender The spender of the validator ticket.\n * @param amount The amount to approve.\n * @returns The transaction.\n */\n public approve(spender: Address, amount: bigint) {\n return this.getContract().write.approve([spender, amount], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Get the allowance of the owner for the spender.\n *\n * @param owner The owner of the allowance.\n * @param spender The spender of the allowance.\n * @returns The allowance.\n */\n public getAllowance(owner: Address, spender: Address) {\n return this.getContract().read.allowance([owner, spender]);\n }\n\n /**\n * Get the balance for the address.\n *\n * @param address The address to get the balance of.\n * @returns The balance.\n */\n public getBalance(address: Address) {\n return this.getContract().read.balanceOf([address]);\n }\n\n /**\n * Get the total supply of the validator ticket.\n *\n * @returns The total supply.\n */\n public getTotalSupply() {\n return this.getContract().read.totalSupply();\n }\n\n /**\n * Burn validator tickets.\n *\n * @param amount The amount to burn.\n * @returns The transaction.\n */\n public burn(amount: bigint) {\n return this.getContract().write.burn([amount], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Transfer validator tickets.\n *\n * @param to The recipient address.\n * @param amount The amount to transfer.\n * @returns The transaction.\n */\n public transfer(to: Address, amount: bigint) {\n return this.getContract().write.transfer([to, amount], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Transfer validator tickets from another address.\n *\n * @param from The sender address.\n * @param to The recipient address.\n * @param amount The amount to transfer.\n * @returns The transaction.\n */\n public transferFrom(from: Address, to: Address, amount: bigint) {\n return this.getContract().write.transferFrom([from, to, amount], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Get the guardians fee rate.\n *\n * @returns The guardians fee rate.\n */\n public getGuardiansFeeRate() {\n return this.getContract().read.getGuardiansFeeRate();\n }\n\n /**\n * Get the protocol fee rate.\n *\n * @returns The protocol fee rate.\n */\n public getProtocolFeeRate() {\n return this.getContract().read.getProtocolFeeRate();\n }\n\n /**\n * Get the domain separator for EIP-712 signatures.\n *\n * @returns The domain separator.\n */\n public getDomainSeparator() {\n return this.getContract().read.DOMAIN_SEPARATOR();\n }\n\n /**\n * Get the nonce for an owner.\n *\n * @param owner The owner address.\n * @returns The nonce.\n */\n public getNonce(owner: Address) {\n return this.getContract().read.nonces([owner]);\n }\n\n /**\n * Permit function for EIP-2612 approval.\n *\n * @param owner The owner address.\n * @param spender The spender address.\n * @param value The amount to approve.\n * @param deadline The deadline for the permit.\n * @param v The v component of the signature.\n * @param r The r component of the signature.\n * @param s The s component of the signature.\n * @returns The transaction.\n */\n public permit(\n owner: Address,\n spender: Address,\n value: bigint,\n deadline: bigint,\n v: number,\n r: Address,\n s: Address,\n ) {\n return this.getContract().write.permit(\n [owner, spender, value, deadline, v, r, s],\n {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n },\n );\n }\n\n /**\n * Get the EIP-712 domain information.\n *\n * @returns The EIP-712 domain information.\n */\n public getEip712Domain() {\n return this.getContract().read.eip712Domain();\n }\n\n /**\n * Get the name of the token.\n *\n * @returns The token name.\n */\n public getName() {\n return this.getContract().read.name();\n }\n\n /**\n * Get the symbol of the token.\n *\n * @returns The token symbol.\n */\n public getSymbol() {\n return this.getContract().read.symbol();\n }\n\n /**\n * Get the decimals of the token.\n *\n * @returns The token decimals.\n */\n public getDecimals() {\n return this.getContract().read.decimals();\n }\n}\n"],"names":["ValidatorTicketHandler","chain","walletClient","publicClient","VIEM_CHAINS","address","CONTRACT_ADDRESSES","abi","ValidatorTicket","client","getContract","recipient","payableAmount","vtAmount","permitData","spender","amount","owner","to","from","value","deadline","v","r","s"],"mappings":"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"}
|