@pufferfinance/puffer-sdk 1.18.1 → 1.19.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.
@@ -0,0 +1,120 @@
1
+ var n = Object.defineProperty;
2
+ var o = (i, t, e) => t in i ? n(i, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : i[t] = e;
3
+ var a = (i, t, e) => o(i, typeof t != "symbol" ? t + "" : t, e);
4
+ import { V as c } from "../../constants-LC89CXNv.js";
5
+ import { CONTRACT_ADDRESSES as s } from "../addresses.js";
6
+ import { PufferOracleV2 as l } from "../abis/mainnet/PufferOracleV2.js";
7
+ import { g as h } from "../../getContract-Ck2VtUkY.js";
8
+ class f {
9
+ /**
10
+ * Create the handler for the `PufferOracleV2` contract exposing
11
+ * methods to interact with the contract.
12
+ *
13
+ * @param chain Chain to use for the client.
14
+ * @param walletClient The wallet client to use for wallet
15
+ * interactions.
16
+ * @param publicClient The public client to use for public
17
+ * interactions.
18
+ */
19
+ constructor(t, e, r) {
20
+ a(this, "viemChain");
21
+ this.chain = t, this.walletClient = e, this.publicClient = r, this.viemChain = c[t];
22
+ }
23
+ /**
24
+ * Get the contract.
25
+ *
26
+ * @returns The viem contract.
27
+ */
28
+ getContract() {
29
+ const t = s[this.chain].PufferOracleV2, e = l, r = { public: this.publicClient, wallet: this.walletClient };
30
+ return h({ address: t, abi: e, client: r });
31
+ }
32
+ /**
33
+ * Get the validator ticket price.
34
+ *
35
+ * @returns The validator ticket price.
36
+ */
37
+ getValidatorTicketPrice() {
38
+ return this.getContract().read.getValidatorTicketPrice();
39
+ }
40
+ /**
41
+ * Get the total number of validators.
42
+ *
43
+ * @returns The total number of validators.
44
+ */
45
+ getTotalNumberOfValidators() {
46
+ return this.getContract().read.getTotalNumberOfValidators();
47
+ }
48
+ /**
49
+ * Get the locked ETH amount.
50
+ *
51
+ * @returns The locked ETH amount.
52
+ */
53
+ getLockedEthAmount() {
54
+ return this.getContract().read.getLockedEthAmount();
55
+ }
56
+ /**
57
+ * Check if the system is over burst threshold.
58
+ *
59
+ * @returns True if over burst threshold.
60
+ */
61
+ isOverBurstThreshold() {
62
+ return this.getContract().read.isOverBurstThreshold();
63
+ }
64
+ /**
65
+ * Provision a new node.
66
+ *
67
+ * @returns The transaction.
68
+ */
69
+ provisionNode() {
70
+ return this.getContract().write.provisionNode({
71
+ account: this.walletClient.account,
72
+ chain: this.viemChain
73
+ });
74
+ }
75
+ /**
76
+ * Exit validators.
77
+ *
78
+ * @param numberOfExits The number of validators to exit.
79
+ * @returns The transaction.
80
+ */
81
+ exitValidators(t) {
82
+ return this.getContract().write.exitValidators([t], {
83
+ account: this.walletClient.account,
84
+ chain: this.viemChain
85
+ });
86
+ }
87
+ /**
88
+ * Set the mint price for validator tickets.
89
+ *
90
+ * @param newPrice The new mint price.
91
+ * @returns The transaction.
92
+ */
93
+ setMintPrice(t) {
94
+ return this.getContract().write.setMintPrice([t], {
95
+ account: this.walletClient.account,
96
+ chain: this.viemChain
97
+ });
98
+ }
99
+ /**
100
+ * Set the total number of validators.
101
+ *
102
+ * @param newTotalNumberOfValidators The new total number of validators.
103
+ * @param epochNumber The epoch number.
104
+ * @param guardianEOASignatures The guardian EOA signatures.
105
+ * @returns The transaction.
106
+ */
107
+ setTotalNumberOfValidators(t, e, r) {
108
+ return this.getContract().write.setTotalNumberOfValidators(
109
+ [t, e, r],
110
+ {
111
+ account: this.walletClient.account,
112
+ chain: this.viemChain
113
+ }
114
+ );
115
+ }
116
+ }
117
+ export {
118
+ f as PufferOracleV2Handler
119
+ };
120
+ //# sourceMappingURL=puffer-oracle-v2-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"puffer-oracle-v2-handler.js","sources":["../../../lib/contracts/handlers/puffer-oracle-v2-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 { PufferOracleV2 } from '../abis/mainnet/PufferOracleV2';\n\n/**\n * Handler for the `PufferOracleV2` contract exposing methods to interact\n * with the contract.\n */\nexport class PufferOracleV2Handler {\n private viemChain: ViemChain;\n\n /**\n * Create the handler for the `PufferOracleV2` 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].PufferOracleV2 as Address;\n const abi = PufferOracleV2;\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 * Get the validator ticket price.\n *\n * @returns The validator ticket price.\n */\n public getValidatorTicketPrice() {\n return this.getContract().read.getValidatorTicketPrice();\n }\n\n /**\n * Get the total number of validators.\n *\n * @returns The total number of validators.\n */\n public getTotalNumberOfValidators() {\n return this.getContract().read.getTotalNumberOfValidators();\n }\n\n /**\n * Get the locked ETH amount.\n *\n * @returns The locked ETH amount.\n */\n public getLockedEthAmount() {\n return this.getContract().read.getLockedEthAmount();\n }\n\n /**\n * Check if the system is over burst threshold.\n *\n * @returns True if over burst threshold.\n */\n public isOverBurstThreshold() {\n return this.getContract().read.isOverBurstThreshold();\n }\n\n /**\n * Provision a new node.\n *\n * @returns The transaction.\n */\n public provisionNode() {\n return this.getContract().write.provisionNode({\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Exit validators.\n *\n * @param numberOfExits The number of validators to exit.\n * @returns The transaction.\n */\n public exitValidators(numberOfExits: bigint) {\n return this.getContract().write.exitValidators([numberOfExits], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Set the mint price for validator tickets.\n *\n * @param newPrice The new mint price.\n * @returns The transaction.\n */\n public setMintPrice(newPrice: bigint) {\n return this.getContract().write.setMintPrice([newPrice], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Set the total number of validators.\n *\n * @param newTotalNumberOfValidators The new total number of validators.\n * @param epochNumber The epoch number.\n * @param guardianEOASignatures The guardian EOA signatures.\n * @returns The transaction.\n */\n public setTotalNumberOfValidators(\n newTotalNumberOfValidators: bigint,\n epochNumber: bigint,\n guardianEOASignatures: `0x${string}`[],\n ) {\n return this.getContract().write.setTotalNumberOfValidators(\n [newTotalNumberOfValidators, epochNumber, guardianEOASignatures],\n {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n },\n );\n }\n}\n"],"names":["PufferOracleV2Handler","chain","walletClient","publicClient","__publicField","VIEM_CHAINS","address","CONTRACT_ADDRESSES","abi","PufferOracleV2","client","getContract","numberOfExits","newPrice","newTotalNumberOfValidators","epochNumber","guardianEOASignatures"],"mappings":";;;;;;;AAgBO,MAAMA,EAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAajC,YACUC,GACAC,GACAC,GACR;AAhBM,IAAAC,EAAA;AAaE,SAAA,QAAAH,GACA,KAAA,eAAAC,GACA,KAAA,eAAAC,GAEH,KAAA,YAAYE,EAAYJ,CAAK;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQ7B,cAAc;AACnB,UAAMK,IAAUC,EAAmB,KAAK,KAAK,EAAE,gBACzCC,IAAMC,GACNC,IAAS,EAAE,QAAQ,KAAK,cAAc,QAAQ,KAAK,aAAa;AAEtE,WAAOC,EAAY,EAAE,SAAAL,GAAS,KAAAE,GAAK,QAAAE,GAAQ;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYtC,0BAA0B;AAC/B,WAAO,KAAK,cAAc,KAAK,wBAAwB;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQlD,6BAA6B;AAClC,WAAO,KAAK,cAAc,KAAK,2BAA2B;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQrD,qBAAqB;AAC1B,WAAO,KAAK,cAAc,KAAK,mBAAmB;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQ7C,uBAAuB;AAC5B,WAAO,KAAK,cAAc,KAAK,qBAAqB;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQ/C,gBAAgB;AACrB,WAAO,KAAK,cAAc,MAAM,cAAc;AAAA,MAC5C,SAAS,KAAK,aAAa;AAAA,MAC3B,OAAO,KAAK;AAAA,IAAA,CACb;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASI,eAAeE,GAAuB;AAC3C,WAAO,KAAK,YAAY,EAAE,MAAM,eAAe,CAACA,CAAa,GAAG;AAAA,MAC9D,SAAS,KAAK,aAAa;AAAA,MAC3B,OAAO,KAAK;AAAA,IAAA,CACb;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASI,aAAaC,GAAkB;AACpC,WAAO,KAAK,YAAY,EAAE,MAAM,aAAa,CAACA,CAAQ,GAAG;AAAA,MACvD,SAAS,KAAK,aAAa;AAAA,MAC3B,OAAO,KAAK;AAAA,IAAA,CACb;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWI,2BACLC,GACAC,GACAC,GACA;AACO,WAAA,KAAK,cAAc,MAAM;AAAA,MAC9B,CAACF,GAA4BC,GAAaC,CAAqB;AAAA,MAC/D;AAAA,QACE,SAAS,KAAK,aAAa;AAAA,QAC3B,OAAO,KAAK;AAAA,MAAA;AAAA,IAEhB;AAAA,EAAA;AAEJ;"}
package/dist/main.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./api/puffer-client.cjs"),n=require("./api/puffer-client-helpers.cjs"),e=require("./constants-BI6T6ZbJ.cjs"),r=require("./contracts/tokens.cjs"),t=require("./contracts/addresses.cjs"),l=require("./contracts/vaults-addresses.cjs"),s=require("./contracts/handlers/erc20-permit-handler.cjs"),o=require("./contracts/handlers/l1-reward-manager-handler.cjs"),d=require("./contracts/handlers/l2-reward-manager-handler.cjs"),c=require("./contracts/handlers/puf-locker-handler.cjs"),i=require("./contracts/handlers/puffer-depositor-handler.cjs"),u=require("./contracts/handlers/puffer-l2-depositor-handler.cjs"),f=require("./contracts/handlers/puffer-vault-handler.cjs"),_=require("./contracts/handlers/puffer-withdrawal-manager-handler.cjs"),H=require("./contracts/handlers/distributor-handler.cjs"),S=require("./contracts/handlers/concrete-vault-handler.cjs"),E=require("./contracts/handlers/validator-ticket-handler.cjs");exports.PufferClient=a.PufferClient;exports.PufferClientHelpers=n.PufferClientHelpers;exports.Chain=e.Chain;exports.VIEM_CHAINS=e.VIEM_CHAINS;exports.TOKENS_ADDRESSES=r.TOKENS_ADDRESSES;exports.TOKENS_PERMIT_VERSION=r.TOKENS_PERMIT_VERSION;exports.TOKENS_SALT=r.TOKENS_SALT;exports.Token=r.Token;exports.UnifiToken=r.UnifiToken;exports.CONTRACT_ADDRESSES=t.CONTRACT_ADDRESSES;exports.VAULTS_ADDRESSES=l.VAULTS_ADDRESSES;exports.ERC20PermitHandler=s.ERC20PermitHandler;exports.L1RewardManagerHandler=o.L1RewardManagerHandler;exports.L2RewardManagerHandler=d.L2RewardManagerHandler;exports.PufLockerHandler=c.PufLockerHandler;exports.PufferDepositorHandler=i.PufferDepositorHandler;exports.PufferL2DepositorHandler=u.PufferL2DepositorHandler;exports.PufferVaultHandler=f.PufferVaultHandler;exports.PufferWithdrawalManagerHandler=_.PufferWithdrawalManagerHandler;exports.DistributorHandler=H.DistributorHandler;exports.ConcreteVaultHandler=S.ConcreteVaultHandler;exports.ValidatorTicketHandler=E.ValidatorTicketHandler;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./api/puffer-client.cjs"),n=require("./api/puffer-client-helpers.cjs"),e=require("./constants-BI6T6ZbJ.cjs"),r=require("./contracts/tokens.cjs"),t=require("./contracts/addresses.cjs"),l=require("./contracts/vaults-addresses.cjs"),s=require("./contracts/handlers/erc20-permit-handler.cjs"),d=require("./contracts/handlers/l1-reward-manager-handler.cjs"),o=require("./contracts/handlers/l2-reward-manager-handler.cjs"),c=require("./contracts/handlers/puf-locker-handler.cjs"),i=require("./contracts/handlers/puffer-depositor-handler.cjs"),u=require("./contracts/handlers/puffer-l2-depositor-handler.cjs"),f=require("./contracts/handlers/puffer-vault-handler.cjs"),_=require("./contracts/handlers/puffer-withdrawal-manager-handler.cjs"),H=require("./contracts/handlers/distributor-handler.cjs"),S=require("./contracts/handlers/concrete-vault-handler.cjs"),E=require("./contracts/handlers/validator-ticket-handler.cjs"),T=require("./contracts/handlers/puffer-oracle-v2-handler.cjs");exports.PufferClient=a.PufferClient;exports.PufferClientHelpers=n.PufferClientHelpers;exports.Chain=e.Chain;exports.VIEM_CHAINS=e.VIEM_CHAINS;exports.TOKENS_ADDRESSES=r.TOKENS_ADDRESSES;exports.TOKENS_PERMIT_VERSION=r.TOKENS_PERMIT_VERSION;exports.TOKENS_SALT=r.TOKENS_SALT;exports.Token=r.Token;exports.UnifiToken=r.UnifiToken;exports.CONTRACT_ADDRESSES=t.CONTRACT_ADDRESSES;exports.VAULTS_ADDRESSES=l.VAULTS_ADDRESSES;exports.ERC20PermitHandler=s.ERC20PermitHandler;exports.L1RewardManagerHandler=d.L1RewardManagerHandler;exports.L2RewardManagerHandler=o.L2RewardManagerHandler;exports.PufLockerHandler=c.PufLockerHandler;exports.PufferDepositorHandler=i.PufferDepositorHandler;exports.PufferL2DepositorHandler=u.PufferL2DepositorHandler;exports.PufferVaultHandler=f.PufferVaultHandler;exports.PufferWithdrawalManagerHandler=_.PufferWithdrawalManagerHandler;exports.DistributorHandler=H.DistributorHandler;exports.ConcreteVaultHandler=S.ConcreteVaultHandler;exports.ValidatorTicketHandler=E.ValidatorTicketHandler;exports.PufferOracleV2Handler=T.PufferOracleV2Handler;
2
2
  //# sourceMappingURL=main.cjs.map
package/dist/main.d.ts CHANGED
@@ -15,3 +15,4 @@ export * from './contracts/handlers/puffer-withdrawal-manager-handler';
15
15
  export * from './contracts/handlers/distributor-handler';
16
16
  export * from './contracts/handlers/concrete-vault-handler';
17
17
  export * from './contracts/handlers/validator-ticket-handler';
18
+ export * from './contracts/handlers/puffer-oracle-v2-handler';
package/dist/main.js CHANGED
@@ -1,41 +1,43 @@
1
1
  import { PufferClient as o } from "./api/puffer-client.js";
2
2
  import { PufferClientHelpers as t } from "./api/puffer-client-helpers.js";
3
3
  import { C as n, V as p } from "./constants-LC89CXNv.js";
4
- import { TOKENS_ADDRESSES as m, TOKENS_PERMIT_VERSION as x, TOKENS_SALT as S, Token as d, UnifiToken as i } from "./contracts/tokens.js";
5
- import { CONTRACT_ADDRESSES as H } from "./contracts/addresses.js";
6
- import { VAULTS_ADDRESSES as u } from "./contracts/vaults-addresses.js";
7
- import { ERC20PermitHandler as D } from "./contracts/handlers/erc20-permit-handler.js";
4
+ import { TOKENS_ADDRESSES as m, TOKENS_PERMIT_VERSION as x, TOKENS_SALT as d, Token as S, UnifiToken as H } from "./contracts/tokens.js";
5
+ import { CONTRACT_ADDRESSES as E } from "./contracts/addresses.js";
6
+ import { VAULTS_ADDRESSES as T } from "./contracts/vaults-addresses.js";
7
+ import { ERC20PermitHandler as C } from "./contracts/handlers/erc20-permit-handler.js";
8
8
  import { L1RewardManagerHandler as R } from "./contracts/handlers/l1-reward-manager-handler.js";
9
- import { L2RewardManagerHandler as V } from "./contracts/handlers/l2-reward-manager-handler.js";
9
+ import { L2RewardManagerHandler as A } from "./contracts/handlers/l2-reward-manager-handler.js";
10
10
  import { PufLockerHandler as s } from "./contracts/handlers/puf-locker-handler.js";
11
11
  import { PufferDepositorHandler as N } from "./contracts/handlers/puffer-depositor-handler.js";
12
- import { PufferL2DepositorHandler as O } from "./contracts/handlers/puffer-l2-depositor-handler.js";
13
- import { PufferVaultHandler as I } from "./contracts/handlers/puffer-vault-handler.js";
12
+ import { PufferL2DepositorHandler as M } from "./contracts/handlers/puffer-l2-depositor-handler.js";
13
+ import { PufferVaultHandler as k } from "./contracts/handlers/puffer-vault-handler.js";
14
14
  import { PufferWithdrawalManagerHandler as g } from "./contracts/handlers/puffer-withdrawal-manager-handler.js";
15
15
  import { DistributorHandler as K } from "./contracts/handlers/distributor-handler.js";
16
16
  import { ConcreteVaultHandler as U } from "./contracts/handlers/concrete-vault-handler.js";
17
17
  import { ValidatorTicketHandler as W } from "./contracts/handlers/validator-ticket-handler.js";
18
+ import { PufferOracleV2Handler as q } from "./contracts/handlers/puffer-oracle-v2-handler.js";
18
19
  export {
19
- H as CONTRACT_ADDRESSES,
20
+ E as CONTRACT_ADDRESSES,
20
21
  n as Chain,
21
22
  U as ConcreteVaultHandler,
22
23
  K as DistributorHandler,
23
- D as ERC20PermitHandler,
24
+ C as ERC20PermitHandler,
24
25
  R as L1RewardManagerHandler,
25
- V as L2RewardManagerHandler,
26
+ A as L2RewardManagerHandler,
26
27
  s as PufLockerHandler,
27
28
  o as PufferClient,
28
29
  t as PufferClientHelpers,
29
30
  N as PufferDepositorHandler,
30
- O as PufferL2DepositorHandler,
31
- I as PufferVaultHandler,
31
+ M as PufferL2DepositorHandler,
32
+ q as PufferOracleV2Handler,
33
+ k as PufferVaultHandler,
32
34
  g as PufferWithdrawalManagerHandler,
33
35
  m as TOKENS_ADDRESSES,
34
36
  x as TOKENS_PERMIT_VERSION,
35
- S as TOKENS_SALT,
36
- d as Token,
37
- i as UnifiToken,
38
- u as VAULTS_ADDRESSES,
37
+ d as TOKENS_SALT,
38
+ S as Token,
39
+ H as UnifiToken,
40
+ T as VAULTS_ADDRESSES,
39
41
  p as VIEM_CHAINS,
40
42
  W as ValidatorTicketHandler
41
43
  };
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"main.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="1.18.0",o=e;exports.version=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="1.18.1",o=e;exports.version=o;
2
2
  //# sourceMappingURL=version.cjs.map
@@ -1,4 +1,4 @@
1
- const o = "1.18.0", n = o;
1
+ const o = "1.18.1", n = o;
2
2
  export {
3
3
  n as version
4
4
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pufferfinance/puffer-sdk",
3
3
  "description": "SDK for interacting with the puffer smart contracts",
4
- "version": "1.18.1",
4
+ "version": "1.19.0",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/PufferFinance/puffer-sdk.git"