@pufferfinance/puffer-sdk 1.25.4 → 1.26.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.
Files changed (65) hide show
  1. package/dist/api/puffer-client.cjs +1 -1
  2. package/dist/api/puffer-client.cjs.map +1 -1
  3. package/dist/api/puffer-client.d.ts +3 -0
  4. package/dist/api/puffer-client.js +28 -21
  5. package/dist/api/puffer-client.js.map +1 -1
  6. package/dist/contracts/abis/mainnet/vlPUFFER.cjs +2 -0
  7. package/dist/contracts/abis/mainnet/vlPUFFER.cjs.map +1 -0
  8. package/dist/contracts/abis/mainnet/vlPUFFER.d.ts +437 -0
  9. package/dist/contracts/abis/mainnet/vlPUFFER.js +269 -0
  10. package/dist/contracts/abis/mainnet/vlPUFFER.js.map +1 -0
  11. package/dist/contracts/common/lib/types.cjs +2 -0
  12. package/dist/contracts/common/lib/types.cjs.map +1 -0
  13. package/dist/contracts/common/lib/types.d.ts +8 -0
  14. package/dist/contracts/common/lib/types.js +2 -0
  15. package/dist/contracts/common/lib/types.js.map +1 -0
  16. package/dist/contracts/handlers/erc20-permit-handler.cjs +1 -1
  17. package/dist/contracts/handlers/erc20-permit-handler.cjs.map +1 -1
  18. package/dist/contracts/handlers/erc20-permit-handler.d.ts +10 -0
  19. package/dist/contracts/handlers/erc20-permit-handler.js +56 -40
  20. package/dist/contracts/handlers/erc20-permit-handler.js.map +1 -1
  21. package/dist/contracts/handlers/nucleus-boring-vault-handler.cjs +1 -1
  22. package/dist/contracts/handlers/nucleus-boring-vault-handler.cjs.map +1 -1
  23. package/dist/contracts/handlers/nucleus-boring-vault-handler.d.ts +2 -6
  24. package/dist/contracts/handlers/nucleus-boring-vault-handler.js +17 -17
  25. package/dist/contracts/handlers/nucleus-boring-vault-handler.js.map +1 -1
  26. package/dist/contracts/handlers/nucleus-teller-handler.cjs +1 -1
  27. package/dist/contracts/handlers/nucleus-teller-handler.cjs.map +1 -1
  28. package/dist/contracts/handlers/nucleus-teller-handler.d.ts +2 -6
  29. package/dist/contracts/handlers/nucleus-teller-handler.js +11 -20
  30. package/dist/contracts/handlers/nucleus-teller-handler.js.map +1 -1
  31. package/dist/contracts/handlers/puf-locker-handler.cjs +1 -1
  32. package/dist/contracts/handlers/puf-locker-handler.cjs.map +1 -1
  33. package/dist/contracts/handlers/puf-locker-handler.js +31 -40
  34. package/dist/contracts/handlers/puf-locker-handler.js.map +1 -1
  35. package/dist/contracts/handlers/puffer-depositor-handler.cjs +1 -1
  36. package/dist/contracts/handlers/puffer-depositor-handler.cjs.map +1 -1
  37. package/dist/contracts/handlers/puffer-depositor-handler.js +26 -38
  38. package/dist/contracts/handlers/puffer-depositor-handler.js.map +1 -1
  39. package/dist/contracts/handlers/puffer-l2-depositor-handler.cjs +1 -1
  40. package/dist/contracts/handlers/puffer-l2-depositor-handler.cjs.map +1 -1
  41. package/dist/contracts/handlers/puffer-l2-depositor-handler.js +28 -37
  42. package/dist/contracts/handlers/puffer-l2-depositor-handler.js.map +1 -1
  43. package/dist/contracts/handlers/puffer-protocol-handler.cjs.map +1 -1
  44. package/dist/contracts/handlers/puffer-protocol-handler.d.ts +49 -55
  45. package/dist/contracts/handlers/puffer-protocol-handler.js.map +1 -1
  46. package/dist/contracts/handlers/puffer-withdrawal-manager-handler.cjs +1 -1
  47. package/dist/contracts/handlers/puffer-withdrawal-manager-handler.cjs.map +1 -1
  48. package/dist/contracts/handlers/puffer-withdrawal-manager-handler.js +21 -27
  49. package/dist/contracts/handlers/puffer-withdrawal-manager-handler.js.map +1 -1
  50. package/dist/contracts/handlers/validator-ticket-handler.cjs.map +1 -1
  51. package/dist/contracts/handlers/validator-ticket-handler.d.ts +1 -7
  52. package/dist/contracts/handlers/validator-ticket-handler.js.map +1 -1
  53. package/dist/contracts/handlers/vl-puffer-handler.cjs +2 -0
  54. package/dist/contracts/handlers/vl-puffer-handler.cjs.map +1 -0
  55. package/dist/contracts/handlers/vl-puffer-handler.d.ts +14802 -0
  56. package/dist/contracts/handlers/vl-puffer-handler.js +357 -0
  57. package/dist/contracts/handlers/vl-puffer-handler.js.map +1 -0
  58. package/dist/contracts/tokens.cjs +1 -1
  59. package/dist/contracts/tokens.cjs.map +1 -1
  60. package/dist/contracts/tokens.d.ts +2 -1
  61. package/dist/contracts/tokens.js +6 -2
  62. package/dist/contracts/tokens.js.map +1 -1
  63. package/dist/utils/version.cjs +1 -1
  64. package/dist/utils/version.js +1 -1
  65. package/package.json +1 -1
@@ -0,0 +1,357 @@
1
+ var h = Object.defineProperty;
2
+ var l = (a, t, e) => t in a ? h(a, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : a[t] = e;
3
+ var c = (a, t, e) => l(a, typeof t != "symbol" ? t + "" : t, e);
4
+ import { V as u } from "../../constants-C9YZ6Ewc.js";
5
+ import { vlPUFFER as C } from "../abis/mainnet/vlPUFFER.js";
6
+ import { ERC20PermitHandler as g } from "./erc20-permit-handler.js";
7
+ import { TOKENS_ADDRESSES as d, Token as o } from "../tokens.js";
8
+ import { g as m } from "../../getContract-DEPNMZxg.js";
9
+ class F {
10
+ /**
11
+ * Create the handler for the `vlPUFFER` contract exposing methods to
12
+ * interact with the contract.
13
+ *
14
+ * @param chain Chain to use for the client.
15
+ * @param walletClient The wallet client to use for wallet
16
+ * interactions.
17
+ * @param publicClient The public client to use for public
18
+ * interactions.
19
+ */
20
+ constructor(t, e, r) {
21
+ c(this, "viemChain");
22
+ c(this, "erc20PermitHandler");
23
+ this.chain = t, this.walletClient = e, this.publicClient = r, this.viemChain = u[t], this.erc20PermitHandler = new g(
24
+ t,
25
+ e,
26
+ r
27
+ );
28
+ }
29
+ /**
30
+ * Get the contract.
31
+ *
32
+ * @returns The viem contract.
33
+ */
34
+ getContract() {
35
+ const t = d[o.vlPUFFER][this.chain], e = C, r = { public: this.publicClient, wallet: this.walletClient };
36
+ return m({ address: t, abi: e, client: r });
37
+ }
38
+ /**
39
+ * Get the PUFFER token address.
40
+ *
41
+ * @returns The PUFFER token address.
42
+ */
43
+ PUFFER() {
44
+ return this.getContract().read.PUFFER();
45
+ }
46
+ /**
47
+ * Get the decimals of the token.
48
+ *
49
+ * @returns The decimals.
50
+ */
51
+ decimals() {
52
+ return this.getContract().read.decimals();
53
+ }
54
+ /**
55
+ * Get the delegates for an account.
56
+ *
57
+ * @param account The account to get delegates for.
58
+ * @returns The delegate address.
59
+ */
60
+ delegates(t) {
61
+ return this.getContract().read.delegates([t]);
62
+ }
63
+ /**
64
+ * Get the owner of the contract.
65
+ *
66
+ * @returns The owner address.
67
+ */
68
+ owner() {
69
+ return this.getContract().read.owner();
70
+ }
71
+ /**
72
+ * Get the allowance of the owner for the spender.
73
+ *
74
+ * @param owner The owner of the allowance.
75
+ * @param spender The spender of the allowance.
76
+ * @returns The allowance.
77
+ */
78
+ allowance(t, e) {
79
+ return this.getContract().read.allowance([t, e]);
80
+ }
81
+ /**
82
+ * Transfer tokens from one address to another.
83
+ *
84
+ * @param from The address to transfer from.
85
+ * @param to The address to transfer to.
86
+ * @param value The amount to transfer.
87
+ * @returns The transaction.
88
+ */
89
+ transferFrom(t, e, r) {
90
+ return this.getContract().write.transferFrom([t, e, r], {
91
+ account: this.walletClient.account,
92
+ chain: this.viemChain
93
+ });
94
+ }
95
+ /**
96
+ * Get the total supply of the token.
97
+ *
98
+ * @returns The total supply.
99
+ */
100
+ totalSupply() {
101
+ return this.getContract().read.totalSupply();
102
+ }
103
+ /**
104
+ * Get the symbol of the token.
105
+ *
106
+ * @returns The symbol.
107
+ */
108
+ symbol() {
109
+ return this.getContract().read.symbol();
110
+ }
111
+ /**
112
+ * Check if the contract is paused.
113
+ *
114
+ * @returns True if paused, false otherwise.
115
+ */
116
+ isPaused() {
117
+ return this.getContract().read.paused();
118
+ }
119
+ /**
120
+ * Get the lock information for a user.
121
+ *
122
+ * @param user The user address.
123
+ * @returns The lock information.
124
+ */
125
+ async lockInfos(t) {
126
+ const [e, r] = await this.getContract().read.lockInfos([
127
+ t
128
+ ]);
129
+ return { pufferAmount: e, unlockTime: r };
130
+ }
131
+ /**
132
+ * Get the past total supply at a specific timepoint.
133
+ *
134
+ * @param timepoint The timepoint to get the total supply for.
135
+ * @returns The past total supply.
136
+ */
137
+ getPastTotalSupply(t) {
138
+ return this.getContract().read.getPastTotalSupply([t]);
139
+ }
140
+ /**
141
+ * Get the balance for an address.
142
+ *
143
+ * @param account The address to get the balance of.
144
+ * @returns The balance.
145
+ */
146
+ balanceOf(t) {
147
+ return this.getContract().read.balanceOf([t]);
148
+ }
149
+ /**
150
+ * Get the nonce for an owner.
151
+ *
152
+ * @param owner The owner address.
153
+ * @returns The nonce.
154
+ */
155
+ nonces(t) {
156
+ return this.getContract().read.nonces([t]);
157
+ }
158
+ /**
159
+ * Get the votes for an account.
160
+ *
161
+ * @param account The account to get votes for.
162
+ * @returns The votes.
163
+ */
164
+ votes(t) {
165
+ return this.getContract().read.getVotes([t]);
166
+ }
167
+ /**
168
+ * Delegate by signature.
169
+ *
170
+ * @param delegatee The delegatee address.
171
+ * @param nonce The nonce.
172
+ * @param expiry The expiry time.
173
+ * @param v The v component of the signature.
174
+ * @param r The r component of the signature.
175
+ * @param s The s component of the signature.
176
+ * @returns The transaction.
177
+ */
178
+ delegateBySig(t, e, r, n, i, s) {
179
+ return this.getContract().write.delegateBySig(
180
+ [t, e, r, n, i, s],
181
+ {
182
+ account: this.walletClient.account,
183
+ chain: this.viemChain
184
+ }
185
+ );
186
+ }
187
+ /**
188
+ * Transfer tokens to another address.
189
+ *
190
+ * @param to The address to transfer to.
191
+ * @param value The amount to transfer.
192
+ * @returns The transaction.
193
+ */
194
+ transfer(t, e) {
195
+ return this.getContract().write.transfer([t, e], {
196
+ account: this.walletClient.account,
197
+ chain: this.viemChain
198
+ });
199
+ }
200
+ /**
201
+ * Get the clock mode.
202
+ *
203
+ * @returns The clock mode.
204
+ */
205
+ getClockMode() {
206
+ return this.getContract().read.CLOCK_MODE();
207
+ }
208
+ /**
209
+ * Get the number of checkpoints for an account.
210
+ *
211
+ * @param account The account to get checkpoints for.
212
+ * @returns The number of checkpoints.
213
+ */
214
+ numCheckpoints(t) {
215
+ return this.getContract().read.numCheckpoints([t]);
216
+ }
217
+ /**
218
+ * Approve a spender to spend tokens.
219
+ *
220
+ * @param spender The spender address.
221
+ * @param value The amount to approve.
222
+ * @returns The transaction.
223
+ */
224
+ approve(t, e) {
225
+ return this.getContract().write.approve([t, e], {
226
+ account: this.walletClient.account,
227
+ chain: this.viemChain
228
+ });
229
+ }
230
+ /**
231
+ * Re-lock with the specified amount and multiplier.
232
+ *
233
+ * @param amount The amount to re-lock.
234
+ * @param multiplier The multiplier for the re-lock.
235
+ * @returns The transaction.
236
+ */
237
+ reLock(t, e) {
238
+ return this.getContract().write.reLock([t, e], {
239
+ account: this.walletClient.account,
240
+ chain: this.viemChain
241
+ });
242
+ }
243
+ /**
244
+ * Get the past votes for an account at a specific timepoint.
245
+ *
246
+ * @param account The account to get past votes for.
247
+ * @param timepoint The timepoint to get votes for.
248
+ * @returns The past votes.
249
+ */
250
+ getPastVotes(t, e) {
251
+ return this.getContract().read.getPastVotes([t, e]);
252
+ }
253
+ /**
254
+ * Get the checkpoints for an account at a specific position.
255
+ *
256
+ * @param account The account to get checkpoints for.
257
+ * @param pos The position of the checkpoint.
258
+ * @returns The checkpoint.
259
+ */
260
+ checkpoints(t, e) {
261
+ return this.getContract().read.checkpoints([t, e]);
262
+ }
263
+ /**
264
+ * Get the name of the token.
265
+ *
266
+ * @returns The name.
267
+ */
268
+ name() {
269
+ return this.getContract().read.name();
270
+ }
271
+ /**
272
+ * Create a lock with the specified amount and multiplier.
273
+ *
274
+ * @param amount The amount to lock.
275
+ * @param multiplier The multiplier for the lock.
276
+ * @returns The transaction.
277
+ */
278
+ createLock(t, e) {
279
+ return this.getContract().write.createLock([t, e], {
280
+ account: this.walletClient.account,
281
+ chain: this.viemChain
282
+ });
283
+ }
284
+ /**
285
+ * Create a lock with permit.
286
+ *
287
+ * @param value The amount to lock.
288
+ * @param multiplier The multiplier for the lock.
289
+ * @param permitData The permit data.
290
+ * @returns The transaction.
291
+ */
292
+ createLockWithPermit(t, e, r) {
293
+ return this.getContract().write.createLockWithPermit(
294
+ [t, e, r],
295
+ {
296
+ account: this.walletClient.account,
297
+ chain: this.viemChain
298
+ }
299
+ );
300
+ }
301
+ /**
302
+ * Create a lock with permit.
303
+ *
304
+ * @param value The amount to lock.
305
+ * @param multiplier The multiplier for the lock.
306
+ * @param isPreapproved Whether the PUFFER token is preapproved.
307
+ * @returns The transaction.
308
+ */
309
+ async lock(t, e, r) {
310
+ if (r)
311
+ return this.createLock(t, e);
312
+ const n = this.walletClient.account, i = await this.erc20PermitHandler.withToken(o.PUFFER).getPermitData(n.address, this.getContract().address, t);
313
+ return this.getContract().write.createLockWithPermit(
314
+ [t, e, i],
315
+ {
316
+ account: this.walletClient.account,
317
+ chain: this.viemChain
318
+ }
319
+ );
320
+ }
321
+ /**
322
+ * Get the current clock value.
323
+ *
324
+ * @returns The clock value.
325
+ */
326
+ getClock() {
327
+ return this.getContract().read.clock();
328
+ }
329
+ /**
330
+ * Withdraw tokens to a recipient.
331
+ *
332
+ * @param recipient The recipient address.
333
+ * @returns The transaction.
334
+ */
335
+ withdraw(t) {
336
+ return this.getContract().write.withdraw([t], {
337
+ account: this.walletClient.account,
338
+ chain: this.viemChain
339
+ });
340
+ }
341
+ /**
342
+ * Delegate votes to another address.
343
+ *
344
+ * @param delegatee The delegatee address.
345
+ * @returns The transaction.
346
+ */
347
+ delegate(t) {
348
+ return this.getContract().write.delegate([t], {
349
+ account: this.walletClient.account,
350
+ chain: this.viemChain
351
+ });
352
+ }
353
+ }
354
+ export {
355
+ F as VLPufferHandler
356
+ };
357
+ //# sourceMappingURL=vl-puffer-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vl-puffer-handler.js","sources":["../../../lib/contracts/handlers/vl-puffer-handler.ts"],"sourcesContent":["import {\n Address,\n GetContractReturnType,\n PublicClient,\n Chain as ViemChain,\n WalletClient,\n getContract,\n Account,\n Hex,\n} from 'viem';\nimport { Chain, VIEM_CHAINS } from '../../chains/constants';\nimport { vlPUFFER } from '../abis/mainnet/vlPUFFER';\nimport { ERC20PermitHandler } from './erc20-permit-handler';\nimport { Token, TOKENS_ADDRESSES } from '../tokens';\nimport { PermitData } from '../common/lib/types';\n\n/**\n * Handler for the `vlPUFFER` contract exposing methods to interact\n * with the contract.\n */\nexport class VLPufferHandler {\n private viemChain: ViemChain;\n private erc20PermitHandler: ERC20PermitHandler;\n\n /**\n * Create the handler for the `vlPUFFER` contract exposing methods to\n * 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 = TOKENS_ADDRESSES[Token.vlPUFFER][this.chain] as Address;\n const abi = vlPUFFER;\n const client = { public: this.publicClient, wallet: this.walletClient };\n\n return getContract({ address, abi, client }) as GetContractReturnType<\n typeof vlPUFFER,\n typeof client,\n Address\n >;\n }\n\n /**\n * Get the PUFFER token address.\n *\n * @returns The PUFFER token address.\n */\n public PUFFER() {\n return this.getContract().read.PUFFER();\n }\n\n /**\n * Get the decimals of the token.\n *\n * @returns The decimals.\n */\n public decimals() {\n return this.getContract().read.decimals();\n }\n\n /**\n * Get the delegates for an account.\n *\n * @param account The account to get delegates for.\n * @returns The delegate address.\n */\n public delegates(account: Address) {\n return this.getContract().read.delegates([account]);\n }\n\n /**\n * Get the owner of the contract.\n *\n * @returns The owner address.\n */\n public owner() {\n return this.getContract().read.owner();\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 allowance(owner: Address, spender: Address) {\n return this.getContract().read.allowance([owner, spender]);\n }\n\n /**\n * Transfer tokens from one address to another.\n *\n * @param from The address to transfer from.\n * @param to The address to transfer to.\n * @param value The amount to transfer.\n * @returns The transaction.\n */\n public transferFrom(from: Address, to: Address, value: bigint) {\n return this.getContract().write.transferFrom([from, to, value], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Get the total supply of the token.\n *\n * @returns The total supply.\n */\n public totalSupply() {\n return this.getContract().read.totalSupply();\n }\n\n /**\n * Get the symbol of the token.\n *\n * @returns The symbol.\n */\n public symbol() {\n return this.getContract().read.symbol();\n }\n\n /**\n * Check if the contract is paused.\n *\n * @returns True if paused, false otherwise.\n */\n public isPaused() {\n return this.getContract().read.paused();\n }\n\n /**\n * Get the lock information for a user.\n *\n * @param user The user address.\n * @returns The lock information.\n */\n public async lockInfos(user: Address) {\n const [pufferAmount, unlockTime] = await this.getContract().read.lockInfos([\n user,\n ]);\n\n return { pufferAmount, unlockTime };\n }\n\n /**\n * Get the past total supply at a specific timepoint.\n *\n * @param timepoint The timepoint to get the total supply for.\n * @returns The past total supply.\n */\n public getPastTotalSupply(timepoint: bigint) {\n return this.getContract().read.getPastTotalSupply([timepoint]);\n }\n\n /**\n * Get the balance for an address.\n *\n * @param account The address to get the balance of.\n * @returns The balance.\n */\n public balanceOf(account: Address) {\n return this.getContract().read.balanceOf([account]);\n }\n\n /**\n * Get the nonce for an owner.\n *\n * @param owner The owner address.\n * @returns The nonce.\n */\n public nonces(owner: Address) {\n return this.getContract().read.nonces([owner]);\n }\n\n /**\n * Get the votes for an account.\n *\n * @param account The account to get votes for.\n * @returns The votes.\n */\n public votes(account: Address) {\n return this.getContract().read.getVotes([account]);\n }\n\n /**\n * Delegate by signature.\n *\n * @param delegatee The delegatee address.\n * @param nonce The nonce.\n * @param expiry The expiry time.\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 delegateBySig(\n delegatee: Address,\n nonce: bigint,\n expiry: bigint,\n v: number,\n r: Hex,\n s: Hex,\n ) {\n return this.getContract().write.delegateBySig(\n [delegatee, nonce, expiry, v, r, s],\n {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n },\n );\n }\n\n /**\n * Transfer tokens to another address.\n *\n * @param to The address to transfer to.\n * @param value The amount to transfer.\n * @returns The transaction.\n */\n public transfer(to: Address, value: bigint) {\n return this.getContract().write.transfer([to, value], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Get the clock mode.\n *\n * @returns The clock mode.\n */\n public getClockMode() {\n return this.getContract().read.CLOCK_MODE();\n }\n\n /**\n * Get the number of checkpoints for an account.\n *\n * @param account The account to get checkpoints for.\n * @returns The number of checkpoints.\n */\n public numCheckpoints(account: Address) {\n return this.getContract().read.numCheckpoints([account]);\n }\n\n /**\n * Approve a spender to spend tokens.\n *\n * @param spender The spender address.\n * @param value The amount to approve.\n * @returns The transaction.\n */\n public approve(spender: Address, value: bigint) {\n return this.getContract().write.approve([spender, value], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Re-lock with the specified amount and multiplier.\n *\n * @param amount The amount to re-lock.\n * @param multiplier The multiplier for the re-lock.\n * @returns The transaction.\n */\n public reLock(amount: bigint, multiplier: bigint) {\n return this.getContract().write.reLock([amount, multiplier], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Get the past votes for an account at a specific timepoint.\n *\n * @param account The account to get past votes for.\n * @param timepoint The timepoint to get votes for.\n * @returns The past votes.\n */\n public getPastVotes(account: Address, timepoint: bigint) {\n return this.getContract().read.getPastVotes([account, timepoint]);\n }\n\n /**\n * Get the checkpoints for an account at a specific position.\n *\n * @param account The account to get checkpoints for.\n * @param pos The position of the checkpoint.\n * @returns The checkpoint.\n */\n public checkpoints(account: Address, pos: number) {\n return this.getContract().read.checkpoints([account, pos]);\n }\n\n /**\n * Get the name of the token.\n *\n * @returns The name.\n */\n public name() {\n return this.getContract().read.name();\n }\n\n /**\n * Create a lock with the specified amount and multiplier.\n *\n * @param amount The amount to lock.\n * @param multiplier The multiplier for the lock.\n * @returns The transaction.\n */\n public createLock(amount: bigint, multiplier: bigint) {\n return this.getContract().write.createLock([amount, multiplier], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Create a lock with permit.\n *\n * @param value The amount to lock.\n * @param multiplier The multiplier for the lock.\n * @param permitData The permit data.\n * @returns The transaction.\n */\n public createLockWithPermit(\n value: bigint,\n multiplier: bigint,\n permitData: PermitData,\n ) {\n return this.getContract().write.createLockWithPermit(\n [value, multiplier, permitData],\n {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n },\n );\n }\n\n /**\n * Create a lock with permit.\n *\n * @param value The amount to lock.\n * @param multiplier The multiplier for the lock.\n * @param isPreapproved Whether the PUFFER token is preapproved.\n * @returns The transaction.\n */\n public async lock(value: bigint, multiplier: bigint, isPreapproved: boolean) {\n if (isPreapproved) {\n return this.createLock(value, multiplier);\n }\n\n const account = this.walletClient.account as Account;\n // Internally create a permit signature for the PUFFER token.\n const permitData = await this.erc20PermitHandler\n .withToken(Token.PUFFER)\n .getPermitData(account.address, this.getContract().address, value);\n\n // Create a lock with the permit data.\n return this.getContract().write.createLockWithPermit(\n [value, multiplier, permitData],\n {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n },\n );\n }\n\n /**\n * Get the current clock value.\n *\n * @returns The clock value.\n */\n public getClock() {\n return this.getContract().read.clock();\n }\n\n /**\n * Withdraw tokens to a recipient.\n *\n * @param recipient The recipient address.\n * @returns The transaction.\n */\n public withdraw(recipient: Address) {\n return this.getContract().write.withdraw([recipient], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n\n /**\n * Delegate votes to another address.\n *\n * @param delegatee The delegatee address.\n * @returns The transaction.\n */\n public delegate(delegatee: Address) {\n return this.getContract().write.delegate([delegatee], {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n });\n }\n}\n"],"names":["VLPufferHandler","chain","walletClient","publicClient","__publicField","VIEM_CHAINS","ERC20PermitHandler","address","TOKENS_ADDRESSES","Token","abi","vlPUFFER","client","getContract","account","owner","spender","from","to","value","user","pufferAmount","unlockTime","timepoint","delegatee","nonce","expiry","v","r","amount","multiplier","pos","permitData","isPreapproved","recipient"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../constants-CxSgz27h.cjs");var C=(e=>(e.USDT="USDT",e.USDC="USDC",e.DAI="DAI",e.WETH="WETH",e.stETH="stETH",e.wstETH="wstETH",e.eETH="eETH",e.cbETH="cbETH",e.ALT="ALT",e.pufETHwstE="pufETHwstE",e.pufETH="pufETH",e.xPufETH="xPufETH",e.ctTACpufETH="ctTACpufETH",e.tacpufETH="tacpufETH",e.WBTC="WBTC",e.LBTC="LBTC",e.tBTC="tBTC",e.cbBTC="cbBTC",e.pumpBTC="pumpBTC",e.SolvBTC="SolvBTC",e.PUFFER="PUFFER",e.vePUFFER="vePUFFER",e.CARROT="CARROT",e.lvlUSD="lvlUSD",e.slvlUSD="slvlUSD",e.mtwCARROT="mtwCARROT",e.sCARROT="sCARROT",e.LINK="LINK",e.TEST="TEST",e.VT="VT",e.EIGEN="EIGEN",e.ARPA="ARPA",e))(C||{}),i=(e=>(e.unifiETH="unifiETH",e.unifiUSD="unifiUSD",e.unifiBTC="unifiBTC",e.pufETHs="pufETHs",e))(i||{});const n={VT:{[a.Chain.Mainnet]:"0x7D26AD6F6BA9D6bA1de0218Ae5e20CD3a273a55A",[a.Chain.Holesky]:"0xB028194785178a94Fe608994A4d5AD84c285A640"},TEST:{[a.Chain.Sepolia]:"0xd26e3540a0a368845b234736a0700e0a5a821bba",[a.Chain.OptimismSepolia]:"0x7Fa13D6CB44164ea09dF8BCc673A8849092D435b"},LINK:{[a.Chain.BaseSepolia]:"0xe4ab69c077896252fafbd49efd26b5d171a32410",[a.Chain.OptimismSepolia]:"0xE4aB69C077896252FAFBD49EFD26B5D171A32410"},USDT:{[a.Chain.Mainnet]:"0xdac17f958d2ee523a2206206994597c13d831ec7",[a.Chain.Holesky]:"0xd5bef2c64f418fd460319521d37862327122e3bc",[a.Chain.Sepolia]:"0xaa8e23fb1079ea71e0a56f48a2aa51851d8433d0"},USDC:{[a.Chain.Mainnet]:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",[a.Chain.Holesky]:"0x64Cc0de0429bcb87e875905a0c313ec88f6d1d3E"},DAI:{[a.Chain.Mainnet]:"0x6b175474e89094c44da98b954eedeac495271d0f",[a.Chain.Holesky]:"0x4478905505ddfb7eA1c8A9f46eAEC3695cE542ac"},WETH:{[a.Chain.Mainnet]:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",[a.Chain.Holesky]:"0x1d181cBd1825e9eBC6AD966878D555A7215FF4F0",[a.Chain.Hoodi]:"0x251609d3e04165CA5CfaBa5DEE70A4e47863D060"},stETH:{[a.Chain.Mainnet]:"0xae7ab96520de3a18e5e111b5eaab095312d7fe84",[a.Chain.Holesky]:"0x3F1c547b21f65e10480dE3ad8E19fAAC46C95034"},wstETH:{[a.Chain.Mainnet]:"0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0",[a.Chain.Holesky]:"0x8d09a4502Cc8Cf1547aD300E066060D043f6982D"},eETH:{[a.Chain.Mainnet]:"0x35fa164735182de50811e8e2e824cfb9b6118ac2",[a.Chain.Holesky]:"0x7ba2ee123b5977e3da040e1eacb3a61c82c17876"},cbETH:{[a.Chain.Mainnet]:"0xbe9895146f7af43049ca1c1ae358b0541ea49704",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},ALT:{[a.Chain.Mainnet]:"0x8457ca5040ad67fdebbcc8edce889a335bc0fbfb",[a.Chain.Holesky]:"0xaf5588a571b42c7e50bd440d80f9bf94a4db94ee"},pufETHwstE:{[a.Chain.Mainnet]:"0xeeda34a377dd0ca676b9511ee1324974fa8d980d",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},pufETH:{[a.Chain.Mainnet]:"0xd9a442856c234a39a81a089c06451ebaa4306a72",[a.Chain.Holesky]:"0x9196830bB4c05504E0A8475A0aD566AceEB6BeC9",[a.Chain.Soneium]:"0x6c460b2c6D6719562D5dA43E5152B375e79B9A8B",[a.Chain.Arbitrum]:"0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF",[a.Chain.Berachain]:"0x417b0Ff8358Eb72867Da92225CaB99BCD5e6F205",[a.Chain.TAC]:"0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF"},xPufETH:{[a.Chain.Mainnet]:"0xD7D2802f6b19843ac4DfE25022771FD83b5A7464",[a.Chain.Base]:"0x23dA5F2d509cb43A59d43C108a43eDf34510eff1",[a.Chain.Bsc]:"0x64274835D88F5c0215da8AADd9A5f2D2A2569381",[a.Chain.ApeChain]:"0x6234E5ef39B12EFdFcbd99dd7F452F27F3fEAE3b",[a.Chain.Zircuit]:"0x9346A5043C590133FE900aec643D9622EDddBA57"},ctTACpufETH:{[a.Chain.Mainnet]:"0x78f314241df1ac151bfd0413eeb51979515f6abd",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},tacpufETH:{[a.Chain.Mainnet]:"0xf2e97704a567e003ed97f2d0976c45b2dda766a0",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},WBTC:{[a.Chain.Mainnet]:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},LBTC:{[a.Chain.Mainnet]:"0x8236a87084f8b84306f72007f36f2618a5634494",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},tBTC:{[a.Chain.Mainnet]:"0x18084fbA666a33d37592fA2633fD49a74DD93a88",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},cbBTC:{[a.Chain.Mainnet]:"0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},pumpBTC:{[a.Chain.Mainnet]:"0xf469fbd2abcd6b9de8e169d128226c0fc90a012e",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},SolvBTC:{[a.Chain.Mainnet]:"0x7a56e1c57c7475ccf742a1832b028f0456652f97",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},PUFFER:{[a.Chain.Mainnet]:"0x4d1c297d39c5c1277964d0e3f8aa901493664530",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},vePUFFER:{[a.Chain.Mainnet]:"0xA55eD5808aeCDF23AE3782C1443185f5D2363ce7"},CARROT:{[a.Chain.Mainnet]:"0x282a69142bac47855c3fbe1693fcc4ba3b4d5ed6",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},lvlUSD:{[a.Chain.Mainnet]:"0x7C1156E515aA1A2E851674120074968C905aAF37",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},slvlUSD:{[a.Chain.Mainnet]:"0x4737d9b4592b40d51e110b94c9c043c6654067ae",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},mtwCARROT:{[a.Chain.Mainnet]:"0x8A5A5DE9db5770123Ff2145F59e9F20047f0A8EC",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},sCARROT:{[a.Chain.Mainnet]:"0x99c599227c65132822f0290d9e5b4b0430d6c0d6",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},EIGEN:{[a.Chain.Mainnet]:"0xec53bF9167f50cDEB3Ae105f56099aaaB9061F83"},ARPA:{[a.Chain.Mainnet]:"0xBA50933C268F567BDC86E1aC131BE072C6B0b71a"},unifiETH:{[a.Chain.Mainnet]:"0x196ead472583bc1e9af7a05f860d9857e1bd3dcc",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},unifiUSD:{[a.Chain.Mainnet]:"0x82c40e07277eBb92935f79cE92268F80dDc7caB4",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},unifiBTC:{[a.Chain.Mainnet]:"0x170d847a8320f3b6a77ee15b0cae430e3ec933a0",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},pufETHs:{[a.Chain.Mainnet]:"0x62a4ce0722ee65635c0f8339dd814d549b6f6735",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"}},c={USDT:"",USDC:"",DAI:"",WETH:"",stETH:"2",wstETH:"1",eETH:"1",cbETH:"2",ALT:"1",pufETHwstE:"v7.0.0",pufETH:"1",xPufETH:"1",ctTACpufETH:"",tacpufETH:"v0.5.0",WBTC:"",LBTC:"",tBTC:"",cbBTC:"",pumpBTC:"",SolvBTC:"",PUFFER:"1",vePUFFER:"1",CARROT:"1",lvlUSD:"1",slvlUSD:"",mtwCARROT:"",sCARROT:"",LINK:"",TEST:"",VT:"1",EIGEN:"1",ARPA:"1",unifiETH:"1",unifiUSD:"1",unifiBTC:"1",pufETHs:"1"},f={pufETHwstE:{[a.Chain.Mainnet]:"0x0e986ed5610121905f03fd3850cebcc00f66166fc3ab760acb4e087d735d9457",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000000000000000000000000000"}};exports.TOKENS_ADDRESSES=n;exports.TOKENS_PERMIT_VERSION=c;exports.TOKENS_SALT=f;exports.Token=C;exports.UnifiToken=i;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../constants-CxSgz27h.cjs");var C=(e=>(e.USDT="USDT",e.USDC="USDC",e.DAI="DAI",e.WETH="WETH",e.stETH="stETH",e.wstETH="wstETH",e.eETH="eETH",e.cbETH="cbETH",e.ALT="ALT",e.pufETHwstE="pufETHwstE",e.pufETH="pufETH",e.xPufETH="xPufETH",e.ctTACpufETH="ctTACpufETH",e.tacpufETH="tacpufETH",e.WBTC="WBTC",e.LBTC="LBTC",e.tBTC="tBTC",e.cbBTC="cbBTC",e.pumpBTC="pumpBTC",e.SolvBTC="SolvBTC",e.PUFFER="PUFFER",e.vePUFFER="vePUFFER",e.CARROT="CARROT",e.lvlUSD="lvlUSD",e.slvlUSD="slvlUSD",e.mtwCARROT="mtwCARROT",e.sCARROT="sCARROT",e.LINK="LINK",e.TEST="TEST",e.VT="VT",e.EIGEN="EIGEN",e.ARPA="ARPA",e.vlPUFFER="vlPUFFER",e))(C||{}),i=(e=>(e.unifiETH="unifiETH",e.unifiUSD="unifiUSD",e.unifiBTC="unifiBTC",e.pufETHs="pufETHs",e))(i||{});const n={VT:{[a.Chain.Mainnet]:"0x7D26AD6F6BA9D6bA1de0218Ae5e20CD3a273a55A",[a.Chain.Holesky]:"0xB028194785178a94Fe608994A4d5AD84c285A640"},TEST:{[a.Chain.Sepolia]:"0xd26e3540a0a368845b234736a0700e0a5a821bba",[a.Chain.OptimismSepolia]:"0x7Fa13D6CB44164ea09dF8BCc673A8849092D435b"},LINK:{[a.Chain.BaseSepolia]:"0xe4ab69c077896252fafbd49efd26b5d171a32410",[a.Chain.OptimismSepolia]:"0xE4aB69C077896252FAFBD49EFD26B5D171A32410"},USDT:{[a.Chain.Mainnet]:"0xdac17f958d2ee523a2206206994597c13d831ec7",[a.Chain.Holesky]:"0xd5bef2c64f418fd460319521d37862327122e3bc",[a.Chain.Sepolia]:"0xaa8e23fb1079ea71e0a56f48a2aa51851d8433d0"},USDC:{[a.Chain.Mainnet]:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",[a.Chain.Holesky]:"0x64Cc0de0429bcb87e875905a0c313ec88f6d1d3E"},DAI:{[a.Chain.Mainnet]:"0x6b175474e89094c44da98b954eedeac495271d0f",[a.Chain.Holesky]:"0x4478905505ddfb7eA1c8A9f46eAEC3695cE542ac"},WETH:{[a.Chain.Mainnet]:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",[a.Chain.Holesky]:"0x1d181cBd1825e9eBC6AD966878D555A7215FF4F0",[a.Chain.Hoodi]:"0x251609d3e04165CA5CfaBa5DEE70A4e47863D060"},stETH:{[a.Chain.Mainnet]:"0xae7ab96520de3a18e5e111b5eaab095312d7fe84",[a.Chain.Holesky]:"0x3F1c547b21f65e10480dE3ad8E19fAAC46C95034"},wstETH:{[a.Chain.Mainnet]:"0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0",[a.Chain.Holesky]:"0x8d09a4502Cc8Cf1547aD300E066060D043f6982D"},eETH:{[a.Chain.Mainnet]:"0x35fa164735182de50811e8e2e824cfb9b6118ac2",[a.Chain.Holesky]:"0x7ba2ee123b5977e3da040e1eacb3a61c82c17876"},cbETH:{[a.Chain.Mainnet]:"0xbe9895146f7af43049ca1c1ae358b0541ea49704",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},ALT:{[a.Chain.Mainnet]:"0x8457ca5040ad67fdebbcc8edce889a335bc0fbfb",[a.Chain.Holesky]:"0xaf5588a571b42c7e50bd440d80f9bf94a4db94ee"},pufETHwstE:{[a.Chain.Mainnet]:"0xeeda34a377dd0ca676b9511ee1324974fa8d980d",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},pufETH:{[a.Chain.Mainnet]:"0xd9a442856c234a39a81a089c06451ebaa4306a72",[a.Chain.Holesky]:"0x9196830bB4c05504E0A8475A0aD566AceEB6BeC9",[a.Chain.Soneium]:"0x6c460b2c6D6719562D5dA43E5152B375e79B9A8B",[a.Chain.Arbitrum]:"0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF",[a.Chain.Berachain]:"0x417b0Ff8358Eb72867Da92225CaB99BCD5e6F205",[a.Chain.TAC]:"0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF"},xPufETH:{[a.Chain.Mainnet]:"0xD7D2802f6b19843ac4DfE25022771FD83b5A7464",[a.Chain.Base]:"0x23dA5F2d509cb43A59d43C108a43eDf34510eff1",[a.Chain.Bsc]:"0x64274835D88F5c0215da8AADd9A5f2D2A2569381",[a.Chain.ApeChain]:"0x6234E5ef39B12EFdFcbd99dd7F452F27F3fEAE3b",[a.Chain.Zircuit]:"0x9346A5043C590133FE900aec643D9622EDddBA57"},ctTACpufETH:{[a.Chain.Mainnet]:"0x78f314241df1ac151bfd0413eeb51979515f6abd",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},tacpufETH:{[a.Chain.Mainnet]:"0xf2e97704a567e003ed97f2d0976c45b2dda766a0",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},WBTC:{[a.Chain.Mainnet]:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},LBTC:{[a.Chain.Mainnet]:"0x8236a87084f8b84306f72007f36f2618a5634494",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},tBTC:{[a.Chain.Mainnet]:"0x18084fbA666a33d37592fA2633fD49a74DD93a88",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},cbBTC:{[a.Chain.Mainnet]:"0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},pumpBTC:{[a.Chain.Mainnet]:"0xf469fbd2abcd6b9de8e169d128226c0fc90a012e",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},SolvBTC:{[a.Chain.Mainnet]:"0x7a56e1c57c7475ccf742a1832b028f0456652f97",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},PUFFER:{[a.Chain.Mainnet]:"0x4d1c297d39c5c1277964d0e3f8aa901493664530",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},vePUFFER:{[a.Chain.Mainnet]:"0xA55eD5808aeCDF23AE3782C1443185f5D2363ce7"},CARROT:{[a.Chain.Mainnet]:"0x282a69142bac47855c3fbe1693fcc4ba3b4d5ed6",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},lvlUSD:{[a.Chain.Mainnet]:"0x7C1156E515aA1A2E851674120074968C905aAF37",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},slvlUSD:{[a.Chain.Mainnet]:"0x4737d9b4592b40d51e110b94c9c043c6654067ae",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},mtwCARROT:{[a.Chain.Mainnet]:"0x8A5A5DE9db5770123Ff2145F59e9F20047f0A8EC",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},sCARROT:{[a.Chain.Mainnet]:"0x99c599227c65132822f0290d9e5b4b0430d6c0d6",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},EIGEN:{[a.Chain.Mainnet]:"0xec53bF9167f50cDEB3Ae105f56099aaaB9061F83"},ARPA:{[a.Chain.Mainnet]:"0xBA50933C268F567BDC86E1aC131BE072C6B0b71a"},unifiETH:{[a.Chain.Mainnet]:"0x196ead472583bc1e9af7a05f860d9857e1bd3dcc",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},unifiUSD:{[a.Chain.Mainnet]:"0x82c40e07277eBb92935f79cE92268F80dDc7caB4",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},unifiBTC:{[a.Chain.Mainnet]:"0x170d847a8320f3b6a77ee15b0cae430e3ec933a0",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},pufETHs:{[a.Chain.Mainnet]:"0x62a4ce0722ee65635c0f8339dd814d549b6f6735",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000"},vlPUFFER:{[a.Chain.Mainnet]:"0xe4c36adb90e936041776ddb87851ec38affd1499"}},c={USDT:"",USDC:"",DAI:"",WETH:"",stETH:"2",wstETH:"1",eETH:"1",cbETH:"2",ALT:"1",pufETHwstE:"v7.0.0",pufETH:"1",xPufETH:"1",ctTACpufETH:"",tacpufETH:"v0.5.0",WBTC:"",LBTC:"",tBTC:"",cbBTC:"",pumpBTC:"",SolvBTC:"",PUFFER:"1",vePUFFER:"1",CARROT:"1",lvlUSD:"1",slvlUSD:"",mtwCARROT:"",sCARROT:"",LINK:"",TEST:"",VT:"1",EIGEN:"1",ARPA:"1",unifiETH:"1",unifiUSD:"1",unifiBTC:"1",pufETHs:"1",vlPUFFER:"1"},f={pufETHwstE:{[a.Chain.Mainnet]:"0x0e986ed5610121905f03fd3850cebcc00f66166fc3ab760acb4e087d735d9457",[a.Chain.Holesky]:"0x0000000000000000000000000000000000000000000000000000000000000000"}};exports.TOKENS_ADDRESSES=n;exports.TOKENS_PERMIT_VERSION=c;exports.TOKENS_SALT=f;exports.Token=C;exports.UnifiToken=i;
2
2
  //# sourceMappingURL=tokens.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.cjs","sources":["../../lib/contracts/tokens.ts"],"sourcesContent":["import { Address } from 'viem';\nimport { Chain } from '../chains/constants';\n\nexport enum Token {\n USDT = 'USDT',\n USDC = 'USDC',\n DAI = 'DAI',\n WETH = 'WETH',\n stETH = 'stETH',\n wstETH = 'wstETH',\n eETH = 'eETH',\n cbETH = 'cbETH',\n ALT = 'ALT',\n pufETHwstE = 'pufETHwstE',\n pufETH = 'pufETH',\n xPufETH = 'xPufETH',\n ctTACpufETH = 'ctTACpufETH',\n tacpufETH = 'tacpufETH',\n WBTC = 'WBTC',\n LBTC = 'LBTC',\n tBTC = 'tBTC',\n cbBTC = 'cbBTC',\n pumpBTC = 'pumpBTC',\n SolvBTC = 'SolvBTC',\n PUFFER = 'PUFFER',\n vePUFFER = 'vePUFFER',\n CARROT = 'CARROT',\n lvlUSD = 'lvlUSD',\n slvlUSD = 'slvlUSD',\n mtwCARROT = 'mtwCARROT',\n sCARROT = 'sCARROT',\n LINK = 'LINK',\n TEST = 'TEST',\n VT = 'VT',\n EIGEN = 'EIGEN',\n ARPA = 'ARPA',\n}\n\nexport enum UnifiToken {\n unifiETH = 'unifiETH',\n unifiUSD = 'unifiUSD',\n unifiBTC = 'unifiBTC',\n // Symbiotic pufETH.\n pufETHs = 'pufETHs',\n}\n\nexport type AnyToken = Token | UnifiToken;\n\nexport const TOKENS_ADDRESSES: {\n [key in AnyToken]: { [chain in Chain]: Address };\n} = {\n [Token.VT]: {\n [Chain.Mainnet]: '0x7D26AD6F6BA9D6bA1de0218Ae5e20CD3a273a55A',\n [Chain.Holesky]: '0xB028194785178a94Fe608994A4d5AD84c285A640',\n },\n [Token.TEST]: {\n [Chain.Sepolia]: '0xd26e3540a0a368845b234736a0700e0a5a821bba',\n [Chain.OptimismSepolia]: '0x7Fa13D6CB44164ea09dF8BCc673A8849092D435b',\n },\n [Token.LINK]: {\n [Chain.BaseSepolia]: '0xe4ab69c077896252fafbd49efd26b5d171a32410',\n [Chain.OptimismSepolia]: '0xE4aB69C077896252FAFBD49EFD26B5D171A32410',\n },\n [Token.USDT]: {\n [Chain.Mainnet]: '0xdac17f958d2ee523a2206206994597c13d831ec7',\n [Chain.Holesky]: '0xd5bef2c64f418fd460319521d37862327122e3bc',\n [Chain.Sepolia]: '0xaa8e23fb1079ea71e0a56f48a2aa51851d8433d0',\n },\n [Token.USDC]: {\n [Chain.Mainnet]: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n [Chain.Holesky]: '0x64Cc0de0429bcb87e875905a0c313ec88f6d1d3E',\n },\n [Token.DAI]: {\n [Chain.Mainnet]: '0x6b175474e89094c44da98b954eedeac495271d0f',\n [Chain.Holesky]: '0x4478905505ddfb7eA1c8A9f46eAEC3695cE542ac',\n },\n [Token.WETH]: {\n [Chain.Mainnet]: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',\n [Chain.Holesky]: '0x1d181cBd1825e9eBC6AD966878D555A7215FF4F0',\n [Chain.Hoodi]: '0x251609d3e04165CA5CfaBa5DEE70A4e47863D060',\n },\n [Token.stETH]: {\n [Chain.Mainnet]: '0xae7ab96520de3a18e5e111b5eaab095312d7fe84',\n [Chain.Holesky]: '0x3F1c547b21f65e10480dE3ad8E19fAAC46C95034',\n },\n [Token.wstETH]: {\n [Chain.Mainnet]: '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0',\n [Chain.Holesky]: '0x8d09a4502Cc8Cf1547aD300E066060D043f6982D',\n },\n [Token.eETH]: {\n [Chain.Mainnet]: '0x35fa164735182de50811e8e2e824cfb9b6118ac2',\n [Chain.Holesky]: '0x7ba2ee123b5977e3da040e1eacb3a61c82c17876',\n },\n [Token.cbETH]: {\n [Chain.Mainnet]: '0xbe9895146f7af43049ca1c1ae358b0541ea49704',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.ALT]: {\n [Chain.Mainnet]: '0x8457ca5040ad67fdebbcc8edce889a335bc0fbfb',\n [Chain.Holesky]: '0xaf5588a571b42c7e50bd440d80f9bf94a4db94ee',\n },\n [Token.pufETHwstE]: {\n [Chain.Mainnet]: '0xeeda34a377dd0ca676b9511ee1324974fa8d980d',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.pufETH]: {\n [Chain.Mainnet]: '0xd9a442856c234a39a81a089c06451ebaa4306a72',\n [Chain.Holesky]: '0x9196830bB4c05504E0A8475A0aD566AceEB6BeC9',\n [Chain.Soneium]: '0x6c460b2c6D6719562D5dA43E5152B375e79B9A8B',\n [Chain.Arbitrum]: '0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF',\n [Chain.Berachain]: '0x417b0Ff8358Eb72867Da92225CaB99BCD5e6F205',\n [Chain.TAC]: '0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF',\n },\n [Token.xPufETH]: {\n [Chain.Mainnet]: '0xD7D2802f6b19843ac4DfE25022771FD83b5A7464',\n [Chain.Base]: '0x23dA5F2d509cb43A59d43C108a43eDf34510eff1',\n [Chain.Bsc]: '0x64274835D88F5c0215da8AADd9A5f2D2A2569381',\n [Chain.ApeChain]: '0x6234E5ef39B12EFdFcbd99dd7F452F27F3fEAE3b',\n [Chain.Zircuit]: '0x9346A5043C590133FE900aec643D9622EDddBA57',\n },\n [Token.ctTACpufETH]: {\n [Chain.Mainnet]: '0x78f314241df1ac151bfd0413eeb51979515f6abd',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.tacpufETH]: {\n [Chain.Mainnet]: '0xf2e97704a567e003ed97f2d0976c45b2dda766a0',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.WBTC]: {\n [Chain.Mainnet]: '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.LBTC]: {\n [Chain.Mainnet]: '0x8236a87084f8b84306f72007f36f2618a5634494',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.tBTC]: {\n [Chain.Mainnet]: '0x18084fbA666a33d37592fA2633fD49a74DD93a88',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.cbBTC]: {\n [Chain.Mainnet]: '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.pumpBTC]: {\n [Chain.Mainnet]: '0xf469fbd2abcd6b9de8e169d128226c0fc90a012e',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.SolvBTC]: {\n [Chain.Mainnet]: '0x7a56e1c57c7475ccf742a1832b028f0456652f97',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.PUFFER]: {\n [Chain.Mainnet]: '0x4d1c297d39c5c1277964d0e3f8aa901493664530',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.vePUFFER]: {\n [Chain.Mainnet]: '0xA55eD5808aeCDF23AE3782C1443185f5D2363ce7',\n },\n [Token.CARROT]: {\n [Chain.Mainnet]: '0x282a69142bac47855c3fbe1693fcc4ba3b4d5ed6',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.lvlUSD]: {\n [Chain.Mainnet]: '0x7C1156E515aA1A2E851674120074968C905aAF37',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.slvlUSD]: {\n [Chain.Mainnet]: '0x4737d9b4592b40d51e110b94c9c043c6654067ae',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.mtwCARROT]: {\n [Chain.Mainnet]: '0x8A5A5DE9db5770123Ff2145F59e9F20047f0A8EC',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.sCARROT]: {\n [Chain.Mainnet]: '0x99c599227c65132822f0290d9e5b4b0430d6c0d6',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.EIGEN]: {\n [Chain.Mainnet]: '0xec53bF9167f50cDEB3Ae105f56099aaaB9061F83',\n },\n [Token.ARPA]: {\n [Chain.Mainnet]: '0xBA50933C268F567BDC86E1aC131BE072C6B0b71a',\n },\n\n // UniFi Tokens\n [UnifiToken.unifiETH]: {\n [Chain.Mainnet]: '0x196ead472583bc1e9af7a05f860d9857e1bd3dcc',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [UnifiToken.unifiUSD]: {\n [Chain.Mainnet]: '0x82c40e07277eBb92935f79cE92268F80dDc7caB4',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [UnifiToken.unifiBTC]: {\n [Chain.Mainnet]: '0x170d847a8320f3b6a77ee15b0cae430e3ec933a0',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [UnifiToken.pufETHs]: {\n [Chain.Mainnet]: '0x62a4ce0722ee65635c0f8339dd814d549b6f6735',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n};\n\nexport const TOKENS_PERMIT_VERSION: { [key in AnyToken]: string } = {\n // USDC does not support permit signatures (ERC20Permit).\n // https://ethereum.stackexchange.com/questions/166254/usdt-contract-dont-have-erc20permit\n [Token.USDT]: '',\n // USDC does not support permit signatures (ERC20Permit).\n [Token.USDC]: '',\n // DAI does not support permit signatures (ERC20Permit).\n [Token.DAI]: '',\n // WETH does not support permit signatures (ERC20Permit).\n [Token.WETH]: '',\n [Token.stETH]: '2',\n // Puffer Quest v1 uses version 1 for wstETH.\n [Token.wstETH]: '1',\n // https://github.com/etherfi-protocol/smart-contracts/blob/7c66e571df4fe7ec502a3c325b623bc52349ef9d/src/EETH.sol#L55\n [Token.eETH]: '1',\n // https://etherscan.io/token/0xbe9895146f7af43049ca1c1ae358b0541ea49704#readProxyContract#F26\n [Token.cbETH]: '2',\n [Token.ALT]: '1',\n [Token.pufETHwstE]: 'v7.0.0',\n [Token.pufETH]: '1',\n [Token.xPufETH]: '1',\n [Token.ctTACpufETH]: '',\n // https://etherscan.io/address/0xf2e97704a567e003ed97f2d0976c45b2dda766a0#readProxyContract#F39\n [Token.tacpufETH]: 'v0.5.0',\n [Token.WBTC]: '',\n [Token.LBTC]: '',\n [Token.tBTC]: '',\n [Token.cbBTC]: '',\n [Token.pumpBTC]: '',\n [Token.SolvBTC]: '',\n [Token.PUFFER]: '1',\n [Token.vePUFFER]: '1',\n [Token.CARROT]: '1',\n [Token.lvlUSD]: '1',\n // `slvlUSD` supports permit but the transactions are reverting now\n // for some reason.\n [Token.slvlUSD]: '',\n [Token.mtwCARROT]: '',\n [Token.sCARROT]: '',\n [Token.LINK]: '',\n [Token.TEST]: '',\n [Token.VT]: '1',\n [Token.EIGEN]: '1',\n [Token.ARPA]: '1',\n\n // UniFi Tokens\n // https://etherscan.io/address/0x196ead472583bc1e9af7a05f860d9857e1bd3dcc#code#F7#L172\n [UnifiToken.unifiETH]: '1',\n // https://etherscan.io/address/0x82c40e07277eBb92935f79cE92268F80dDc7caB4#code#F7#L172\n [UnifiToken.unifiUSD]: '1',\n // https://etherscan.io/address/0x170d847a8320f3b6a77ee15b0cae430e3ec933a0#code#F7#L172\n [UnifiToken.unifiBTC]: '1',\n // https://etherscan.io/address/0x62a4ce0722ee65635c0f8339dd814d549b6f6735#code#F7#L172\n [UnifiToken.pufETHs]: '1',\n};\n\nexport const TOKENS_SALT: Partial<{\n [key in AnyToken]: { [chain in Chain]: Address };\n}> = {\n [Token.pufETHwstE]: {\n // Taken from\n // https://etherscan.io/token/0xeeda34a377dd0ca676b9511ee1324974fa8d980d#readContract#F39.\n [Chain.Mainnet]:\n '0x0e986ed5610121905f03fd3850cebcc00f66166fc3ab760acb4e087d735d9457',\n [Chain.Holesky]:\n '0x0000000000000000000000000000000000000000000000000000000000000000',\n },\n};\n"],"names":["Token","UnifiToken","TOKENS_ADDRESSES","Chain","TOKENS_PERMIT_VERSION","TOKENS_SALT"],"mappings":"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"}
1
+ {"version":3,"file":"tokens.cjs","sources":["../../lib/contracts/tokens.ts"],"sourcesContent":["import { Address } from 'viem';\nimport { Chain } from '../chains/constants';\n\nexport enum Token {\n USDT = 'USDT',\n USDC = 'USDC',\n DAI = 'DAI',\n WETH = 'WETH',\n stETH = 'stETH',\n wstETH = 'wstETH',\n eETH = 'eETH',\n cbETH = 'cbETH',\n ALT = 'ALT',\n pufETHwstE = 'pufETHwstE',\n pufETH = 'pufETH',\n xPufETH = 'xPufETH',\n ctTACpufETH = 'ctTACpufETH',\n tacpufETH = 'tacpufETH',\n WBTC = 'WBTC',\n LBTC = 'LBTC',\n tBTC = 'tBTC',\n cbBTC = 'cbBTC',\n pumpBTC = 'pumpBTC',\n SolvBTC = 'SolvBTC',\n PUFFER = 'PUFFER',\n vePUFFER = 'vePUFFER',\n CARROT = 'CARROT',\n lvlUSD = 'lvlUSD',\n slvlUSD = 'slvlUSD',\n mtwCARROT = 'mtwCARROT',\n sCARROT = 'sCARROT',\n LINK = 'LINK',\n TEST = 'TEST',\n VT = 'VT',\n EIGEN = 'EIGEN',\n ARPA = 'ARPA',\n vlPUFFER = 'vlPUFFER',\n}\n\nexport enum UnifiToken {\n unifiETH = 'unifiETH',\n unifiUSD = 'unifiUSD',\n unifiBTC = 'unifiBTC',\n // Symbiotic pufETH.\n pufETHs = 'pufETHs',\n}\n\nexport type AnyToken = Token | UnifiToken;\n\nexport const TOKENS_ADDRESSES: {\n [key in AnyToken]: { [chain in Chain]: Address };\n} = {\n [Token.VT]: {\n [Chain.Mainnet]: '0x7D26AD6F6BA9D6bA1de0218Ae5e20CD3a273a55A',\n [Chain.Holesky]: '0xB028194785178a94Fe608994A4d5AD84c285A640',\n },\n [Token.TEST]: {\n [Chain.Sepolia]: '0xd26e3540a0a368845b234736a0700e0a5a821bba',\n [Chain.OptimismSepolia]: '0x7Fa13D6CB44164ea09dF8BCc673A8849092D435b',\n },\n [Token.LINK]: {\n [Chain.BaseSepolia]: '0xe4ab69c077896252fafbd49efd26b5d171a32410',\n [Chain.OptimismSepolia]: '0xE4aB69C077896252FAFBD49EFD26B5D171A32410',\n },\n [Token.USDT]: {\n [Chain.Mainnet]: '0xdac17f958d2ee523a2206206994597c13d831ec7',\n [Chain.Holesky]: '0xd5bef2c64f418fd460319521d37862327122e3bc',\n [Chain.Sepolia]: '0xaa8e23fb1079ea71e0a56f48a2aa51851d8433d0',\n },\n [Token.USDC]: {\n [Chain.Mainnet]: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n [Chain.Holesky]: '0x64Cc0de0429bcb87e875905a0c313ec88f6d1d3E',\n },\n [Token.DAI]: {\n [Chain.Mainnet]: '0x6b175474e89094c44da98b954eedeac495271d0f',\n [Chain.Holesky]: '0x4478905505ddfb7eA1c8A9f46eAEC3695cE542ac',\n },\n [Token.WETH]: {\n [Chain.Mainnet]: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',\n [Chain.Holesky]: '0x1d181cBd1825e9eBC6AD966878D555A7215FF4F0',\n [Chain.Hoodi]: '0x251609d3e04165CA5CfaBa5DEE70A4e47863D060',\n },\n [Token.stETH]: {\n [Chain.Mainnet]: '0xae7ab96520de3a18e5e111b5eaab095312d7fe84',\n [Chain.Holesky]: '0x3F1c547b21f65e10480dE3ad8E19fAAC46C95034',\n },\n [Token.wstETH]: {\n [Chain.Mainnet]: '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0',\n [Chain.Holesky]: '0x8d09a4502Cc8Cf1547aD300E066060D043f6982D',\n },\n [Token.eETH]: {\n [Chain.Mainnet]: '0x35fa164735182de50811e8e2e824cfb9b6118ac2',\n [Chain.Holesky]: '0x7ba2ee123b5977e3da040e1eacb3a61c82c17876',\n },\n [Token.cbETH]: {\n [Chain.Mainnet]: '0xbe9895146f7af43049ca1c1ae358b0541ea49704',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.ALT]: {\n [Chain.Mainnet]: '0x8457ca5040ad67fdebbcc8edce889a335bc0fbfb',\n [Chain.Holesky]: '0xaf5588a571b42c7e50bd440d80f9bf94a4db94ee',\n },\n [Token.pufETHwstE]: {\n [Chain.Mainnet]: '0xeeda34a377dd0ca676b9511ee1324974fa8d980d',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.pufETH]: {\n [Chain.Mainnet]: '0xd9a442856c234a39a81a089c06451ebaa4306a72',\n [Chain.Holesky]: '0x9196830bB4c05504E0A8475A0aD566AceEB6BeC9',\n [Chain.Soneium]: '0x6c460b2c6D6719562D5dA43E5152B375e79B9A8B',\n [Chain.Arbitrum]: '0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF',\n [Chain.Berachain]: '0x417b0Ff8358Eb72867Da92225CaB99BCD5e6F205',\n [Chain.TAC]: '0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF',\n },\n [Token.xPufETH]: {\n [Chain.Mainnet]: '0xD7D2802f6b19843ac4DfE25022771FD83b5A7464',\n [Chain.Base]: '0x23dA5F2d509cb43A59d43C108a43eDf34510eff1',\n [Chain.Bsc]: '0x64274835D88F5c0215da8AADd9A5f2D2A2569381',\n [Chain.ApeChain]: '0x6234E5ef39B12EFdFcbd99dd7F452F27F3fEAE3b',\n [Chain.Zircuit]: '0x9346A5043C590133FE900aec643D9622EDddBA57',\n },\n [Token.ctTACpufETH]: {\n [Chain.Mainnet]: '0x78f314241df1ac151bfd0413eeb51979515f6abd',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.tacpufETH]: {\n [Chain.Mainnet]: '0xf2e97704a567e003ed97f2d0976c45b2dda766a0',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.WBTC]: {\n [Chain.Mainnet]: '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.LBTC]: {\n [Chain.Mainnet]: '0x8236a87084f8b84306f72007f36f2618a5634494',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.tBTC]: {\n [Chain.Mainnet]: '0x18084fbA666a33d37592fA2633fD49a74DD93a88',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.cbBTC]: {\n [Chain.Mainnet]: '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.pumpBTC]: {\n [Chain.Mainnet]: '0xf469fbd2abcd6b9de8e169d128226c0fc90a012e',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.SolvBTC]: {\n [Chain.Mainnet]: '0x7a56e1c57c7475ccf742a1832b028f0456652f97',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.PUFFER]: {\n [Chain.Mainnet]: '0x4d1c297d39c5c1277964d0e3f8aa901493664530',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.vePUFFER]: {\n [Chain.Mainnet]: '0xA55eD5808aeCDF23AE3782C1443185f5D2363ce7',\n },\n [Token.CARROT]: {\n [Chain.Mainnet]: '0x282a69142bac47855c3fbe1693fcc4ba3b4d5ed6',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.lvlUSD]: {\n [Chain.Mainnet]: '0x7C1156E515aA1A2E851674120074968C905aAF37',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.slvlUSD]: {\n [Chain.Mainnet]: '0x4737d9b4592b40d51e110b94c9c043c6654067ae',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.mtwCARROT]: {\n [Chain.Mainnet]: '0x8A5A5DE9db5770123Ff2145F59e9F20047f0A8EC',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.sCARROT]: {\n [Chain.Mainnet]: '0x99c599227c65132822f0290d9e5b4b0430d6c0d6',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.EIGEN]: {\n [Chain.Mainnet]: '0xec53bF9167f50cDEB3Ae105f56099aaaB9061F83',\n },\n [Token.ARPA]: {\n [Chain.Mainnet]: '0xBA50933C268F567BDC86E1aC131BE072C6B0b71a',\n },\n\n // UniFi Tokens\n [UnifiToken.unifiETH]: {\n [Chain.Mainnet]: '0x196ead472583bc1e9af7a05f860d9857e1bd3dcc',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [UnifiToken.unifiUSD]: {\n [Chain.Mainnet]: '0x82c40e07277eBb92935f79cE92268F80dDc7caB4',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [UnifiToken.unifiBTC]: {\n [Chain.Mainnet]: '0x170d847a8320f3b6a77ee15b0cae430e3ec933a0',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [UnifiToken.pufETHs]: {\n [Chain.Mainnet]: '0x62a4ce0722ee65635c0f8339dd814d549b6f6735',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.vlPUFFER]: {\n [Chain.Mainnet]: '0xe4c36adb90e936041776ddb87851ec38affd1499',\n },\n};\n\nexport const TOKENS_PERMIT_VERSION: { [key in AnyToken]: string } = {\n // USDC does not support permit signatures (ERC20Permit).\n // https://ethereum.stackexchange.com/questions/166254/usdt-contract-dont-have-erc20permit\n [Token.USDT]: '',\n // USDC does not support permit signatures (ERC20Permit).\n [Token.USDC]: '',\n // DAI does not support permit signatures (ERC20Permit).\n [Token.DAI]: '',\n // WETH does not support permit signatures (ERC20Permit).\n [Token.WETH]: '',\n [Token.stETH]: '2',\n // Puffer Quest v1 uses version 1 for wstETH.\n [Token.wstETH]: '1',\n // https://github.com/etherfi-protocol/smart-contracts/blob/7c66e571df4fe7ec502a3c325b623bc52349ef9d/src/EETH.sol#L55\n [Token.eETH]: '1',\n // https://etherscan.io/token/0xbe9895146f7af43049ca1c1ae358b0541ea49704#readProxyContract#F26\n [Token.cbETH]: '2',\n [Token.ALT]: '1',\n [Token.pufETHwstE]: 'v7.0.0',\n [Token.pufETH]: '1',\n [Token.xPufETH]: '1',\n [Token.ctTACpufETH]: '',\n // https://etherscan.io/address/0xf2e97704a567e003ed97f2d0976c45b2dda766a0#readProxyContract#F39\n [Token.tacpufETH]: 'v0.5.0',\n [Token.WBTC]: '',\n [Token.LBTC]: '',\n [Token.tBTC]: '',\n [Token.cbBTC]: '',\n [Token.pumpBTC]: '',\n [Token.SolvBTC]: '',\n [Token.PUFFER]: '1',\n [Token.vePUFFER]: '1',\n [Token.CARROT]: '1',\n [Token.lvlUSD]: '1',\n // `slvlUSD` supports permit but the transactions are reverting now\n // for some reason.\n [Token.slvlUSD]: '',\n [Token.mtwCARROT]: '',\n [Token.sCARROT]: '',\n [Token.LINK]: '',\n [Token.TEST]: '',\n [Token.VT]: '1',\n [Token.EIGEN]: '1',\n [Token.ARPA]: '1',\n\n // UniFi Tokens\n // https://etherscan.io/address/0x196ead472583bc1e9af7a05f860d9857e1bd3dcc#code#F7#L172\n [UnifiToken.unifiETH]: '1',\n // https://etherscan.io/address/0x82c40e07277eBb92935f79cE92268F80dDc7caB4#code#F7#L172\n [UnifiToken.unifiUSD]: '1',\n // https://etherscan.io/address/0x170d847a8320f3b6a77ee15b0cae430e3ec933a0#code#F7#L172\n [UnifiToken.unifiBTC]: '1',\n // https://etherscan.io/address/0x62a4ce0722ee65635c0f8339dd814d549b6f6735#code#F7#L172\n [UnifiToken.pufETHs]: '1',\n [Token.vlPUFFER]: '1',\n};\n\nexport const TOKENS_SALT: Partial<{\n [key in AnyToken]: { [chain in Chain]: Address };\n}> = {\n [Token.pufETHwstE]: {\n // Taken from\n // https://etherscan.io/token/0xeeda34a377dd0ca676b9511ee1324974fa8d980d#readContract#F39.\n [Chain.Mainnet]:\n '0x0e986ed5610121905f03fd3850cebcc00f66166fc3ab760acb4e087d735d9457',\n [Chain.Holesky]:\n '0x0000000000000000000000000000000000000000000000000000000000000000',\n },\n};\n"],"names":["Token","UnifiToken","TOKENS_ADDRESSES","Chain","TOKENS_PERMIT_VERSION","TOKENS_SALT"],"mappings":"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"}
@@ -32,7 +32,8 @@ export declare enum Token {
32
32
  TEST = "TEST",
33
33
  VT = "VT",
34
34
  EIGEN = "EIGEN",
35
- ARPA = "ARPA"
35
+ ARPA = "ARPA",
36
+ vlPUFFER = "vlPUFFER"
36
37
  }
37
38
  export declare enum UnifiToken {
38
39
  unifiETH = "unifiETH",
@@ -1,5 +1,5 @@
1
1
  import { C as a } from "../constants-C9YZ6Ewc.js";
2
- var c = /* @__PURE__ */ ((e) => (e.USDT = "USDT", e.USDC = "USDC", e.DAI = "DAI", e.WETH = "WETH", e.stETH = "stETH", e.wstETH = "wstETH", e.eETH = "eETH", e.cbETH = "cbETH", e.ALT = "ALT", e.pufETHwstE = "pufETHwstE", e.pufETH = "pufETH", e.xPufETH = "xPufETH", e.ctTACpufETH = "ctTACpufETH", e.tacpufETH = "tacpufETH", e.WBTC = "WBTC", e.LBTC = "LBTC", e.tBTC = "tBTC", e.cbBTC = "cbBTC", e.pumpBTC = "pumpBTC", e.SolvBTC = "SolvBTC", e.PUFFER = "PUFFER", e.vePUFFER = "vePUFFER", e.CARROT = "CARROT", e.lvlUSD = "lvlUSD", e.slvlUSD = "slvlUSD", e.mtwCARROT = "mtwCARROT", e.sCARROT = "sCARROT", e.LINK = "LINK", e.TEST = "TEST", e.VT = "VT", e.EIGEN = "EIGEN", e.ARPA = "ARPA", e))(c || {}), f = /* @__PURE__ */ ((e) => (e.unifiETH = "unifiETH", e.unifiUSD = "unifiUSD", e.unifiBTC = "unifiBTC", e.pufETHs = "pufETHs", e))(f || {});
2
+ var c = /* @__PURE__ */ ((e) => (e.USDT = "USDT", e.USDC = "USDC", e.DAI = "DAI", e.WETH = "WETH", e.stETH = "stETH", e.wstETH = "wstETH", e.eETH = "eETH", e.cbETH = "cbETH", e.ALT = "ALT", e.pufETHwstE = "pufETHwstE", e.pufETH = "pufETH", e.xPufETH = "xPufETH", e.ctTACpufETH = "ctTACpufETH", e.tacpufETH = "tacpufETH", e.WBTC = "WBTC", e.LBTC = "LBTC", e.tBTC = "tBTC", e.cbBTC = "cbBTC", e.pumpBTC = "pumpBTC", e.SolvBTC = "SolvBTC", e.PUFFER = "PUFFER", e.vePUFFER = "vePUFFER", e.CARROT = "CARROT", e.lvlUSD = "lvlUSD", e.slvlUSD = "slvlUSD", e.mtwCARROT = "mtwCARROT", e.sCARROT = "sCARROT", e.LINK = "LINK", e.TEST = "TEST", e.VT = "VT", e.EIGEN = "EIGEN", e.ARPA = "ARPA", e.vlPUFFER = "vlPUFFER", e))(c || {}), f = /* @__PURE__ */ ((e) => (e.unifiETH = "unifiETH", e.unifiUSD = "unifiUSD", e.unifiBTC = "unifiBTC", e.pufETHs = "pufETHs", e))(f || {});
3
3
  const d = {
4
4
  VT: {
5
5
  [a.Mainnet]: "0x7D26AD6F6BA9D6bA1de0218Ae5e20CD3a273a55A",
@@ -151,6 +151,9 @@ const d = {
151
151
  pufETHs: {
152
152
  [a.Mainnet]: "0x62a4ce0722ee65635c0f8339dd814d549b6f6735",
153
153
  [a.Holesky]: "0x0000000000000000000000000000000000000000"
154
+ },
155
+ vlPUFFER: {
156
+ [a.Mainnet]: "0xe4c36adb90e936041776ddb87851ec38affd1499"
154
157
  }
155
158
  }, b = {
156
159
  // USDC does not support permit signatures (ERC20Permit).
@@ -204,7 +207,8 @@ const d = {
204
207
  // https://etherscan.io/address/0x170d847a8320f3b6a77ee15b0cae430e3ec933a0#code#F7#L172
205
208
  unifiBTC: "1",
206
209
  // https://etherscan.io/address/0x62a4ce0722ee65635c0f8339dd814d549b6f6735#code#F7#L172
207
- pufETHs: "1"
210
+ pufETHs: "1",
211
+ vlPUFFER: "1"
208
212
  }, A = {
209
213
  pufETHwstE: {
210
214
  // Taken from
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sources":["../../lib/contracts/tokens.ts"],"sourcesContent":["import { Address } from 'viem';\nimport { Chain } from '../chains/constants';\n\nexport enum Token {\n USDT = 'USDT',\n USDC = 'USDC',\n DAI = 'DAI',\n WETH = 'WETH',\n stETH = 'stETH',\n wstETH = 'wstETH',\n eETH = 'eETH',\n cbETH = 'cbETH',\n ALT = 'ALT',\n pufETHwstE = 'pufETHwstE',\n pufETH = 'pufETH',\n xPufETH = 'xPufETH',\n ctTACpufETH = 'ctTACpufETH',\n tacpufETH = 'tacpufETH',\n WBTC = 'WBTC',\n LBTC = 'LBTC',\n tBTC = 'tBTC',\n cbBTC = 'cbBTC',\n pumpBTC = 'pumpBTC',\n SolvBTC = 'SolvBTC',\n PUFFER = 'PUFFER',\n vePUFFER = 'vePUFFER',\n CARROT = 'CARROT',\n lvlUSD = 'lvlUSD',\n slvlUSD = 'slvlUSD',\n mtwCARROT = 'mtwCARROT',\n sCARROT = 'sCARROT',\n LINK = 'LINK',\n TEST = 'TEST',\n VT = 'VT',\n EIGEN = 'EIGEN',\n ARPA = 'ARPA',\n}\n\nexport enum UnifiToken {\n unifiETH = 'unifiETH',\n unifiUSD = 'unifiUSD',\n unifiBTC = 'unifiBTC',\n // Symbiotic pufETH.\n pufETHs = 'pufETHs',\n}\n\nexport type AnyToken = Token | UnifiToken;\n\nexport const TOKENS_ADDRESSES: {\n [key in AnyToken]: { [chain in Chain]: Address };\n} = {\n [Token.VT]: {\n [Chain.Mainnet]: '0x7D26AD6F6BA9D6bA1de0218Ae5e20CD3a273a55A',\n [Chain.Holesky]: '0xB028194785178a94Fe608994A4d5AD84c285A640',\n },\n [Token.TEST]: {\n [Chain.Sepolia]: '0xd26e3540a0a368845b234736a0700e0a5a821bba',\n [Chain.OptimismSepolia]: '0x7Fa13D6CB44164ea09dF8BCc673A8849092D435b',\n },\n [Token.LINK]: {\n [Chain.BaseSepolia]: '0xe4ab69c077896252fafbd49efd26b5d171a32410',\n [Chain.OptimismSepolia]: '0xE4aB69C077896252FAFBD49EFD26B5D171A32410',\n },\n [Token.USDT]: {\n [Chain.Mainnet]: '0xdac17f958d2ee523a2206206994597c13d831ec7',\n [Chain.Holesky]: '0xd5bef2c64f418fd460319521d37862327122e3bc',\n [Chain.Sepolia]: '0xaa8e23fb1079ea71e0a56f48a2aa51851d8433d0',\n },\n [Token.USDC]: {\n [Chain.Mainnet]: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n [Chain.Holesky]: '0x64Cc0de0429bcb87e875905a0c313ec88f6d1d3E',\n },\n [Token.DAI]: {\n [Chain.Mainnet]: '0x6b175474e89094c44da98b954eedeac495271d0f',\n [Chain.Holesky]: '0x4478905505ddfb7eA1c8A9f46eAEC3695cE542ac',\n },\n [Token.WETH]: {\n [Chain.Mainnet]: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',\n [Chain.Holesky]: '0x1d181cBd1825e9eBC6AD966878D555A7215FF4F0',\n [Chain.Hoodi]: '0x251609d3e04165CA5CfaBa5DEE70A4e47863D060',\n },\n [Token.stETH]: {\n [Chain.Mainnet]: '0xae7ab96520de3a18e5e111b5eaab095312d7fe84',\n [Chain.Holesky]: '0x3F1c547b21f65e10480dE3ad8E19fAAC46C95034',\n },\n [Token.wstETH]: {\n [Chain.Mainnet]: '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0',\n [Chain.Holesky]: '0x8d09a4502Cc8Cf1547aD300E066060D043f6982D',\n },\n [Token.eETH]: {\n [Chain.Mainnet]: '0x35fa164735182de50811e8e2e824cfb9b6118ac2',\n [Chain.Holesky]: '0x7ba2ee123b5977e3da040e1eacb3a61c82c17876',\n },\n [Token.cbETH]: {\n [Chain.Mainnet]: '0xbe9895146f7af43049ca1c1ae358b0541ea49704',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.ALT]: {\n [Chain.Mainnet]: '0x8457ca5040ad67fdebbcc8edce889a335bc0fbfb',\n [Chain.Holesky]: '0xaf5588a571b42c7e50bd440d80f9bf94a4db94ee',\n },\n [Token.pufETHwstE]: {\n [Chain.Mainnet]: '0xeeda34a377dd0ca676b9511ee1324974fa8d980d',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.pufETH]: {\n [Chain.Mainnet]: '0xd9a442856c234a39a81a089c06451ebaa4306a72',\n [Chain.Holesky]: '0x9196830bB4c05504E0A8475A0aD566AceEB6BeC9',\n [Chain.Soneium]: '0x6c460b2c6D6719562D5dA43E5152B375e79B9A8B',\n [Chain.Arbitrum]: '0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF',\n [Chain.Berachain]: '0x417b0Ff8358Eb72867Da92225CaB99BCD5e6F205',\n [Chain.TAC]: '0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF',\n },\n [Token.xPufETH]: {\n [Chain.Mainnet]: '0xD7D2802f6b19843ac4DfE25022771FD83b5A7464',\n [Chain.Base]: '0x23dA5F2d509cb43A59d43C108a43eDf34510eff1',\n [Chain.Bsc]: '0x64274835D88F5c0215da8AADd9A5f2D2A2569381',\n [Chain.ApeChain]: '0x6234E5ef39B12EFdFcbd99dd7F452F27F3fEAE3b',\n [Chain.Zircuit]: '0x9346A5043C590133FE900aec643D9622EDddBA57',\n },\n [Token.ctTACpufETH]: {\n [Chain.Mainnet]: '0x78f314241df1ac151bfd0413eeb51979515f6abd',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.tacpufETH]: {\n [Chain.Mainnet]: '0xf2e97704a567e003ed97f2d0976c45b2dda766a0',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.WBTC]: {\n [Chain.Mainnet]: '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.LBTC]: {\n [Chain.Mainnet]: '0x8236a87084f8b84306f72007f36f2618a5634494',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.tBTC]: {\n [Chain.Mainnet]: '0x18084fbA666a33d37592fA2633fD49a74DD93a88',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.cbBTC]: {\n [Chain.Mainnet]: '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.pumpBTC]: {\n [Chain.Mainnet]: '0xf469fbd2abcd6b9de8e169d128226c0fc90a012e',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.SolvBTC]: {\n [Chain.Mainnet]: '0x7a56e1c57c7475ccf742a1832b028f0456652f97',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.PUFFER]: {\n [Chain.Mainnet]: '0x4d1c297d39c5c1277964d0e3f8aa901493664530',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.vePUFFER]: {\n [Chain.Mainnet]: '0xA55eD5808aeCDF23AE3782C1443185f5D2363ce7',\n },\n [Token.CARROT]: {\n [Chain.Mainnet]: '0x282a69142bac47855c3fbe1693fcc4ba3b4d5ed6',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.lvlUSD]: {\n [Chain.Mainnet]: '0x7C1156E515aA1A2E851674120074968C905aAF37',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.slvlUSD]: {\n [Chain.Mainnet]: '0x4737d9b4592b40d51e110b94c9c043c6654067ae',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.mtwCARROT]: {\n [Chain.Mainnet]: '0x8A5A5DE9db5770123Ff2145F59e9F20047f0A8EC',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.sCARROT]: {\n [Chain.Mainnet]: '0x99c599227c65132822f0290d9e5b4b0430d6c0d6',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.EIGEN]: {\n [Chain.Mainnet]: '0xec53bF9167f50cDEB3Ae105f56099aaaB9061F83',\n },\n [Token.ARPA]: {\n [Chain.Mainnet]: '0xBA50933C268F567BDC86E1aC131BE072C6B0b71a',\n },\n\n // UniFi Tokens\n [UnifiToken.unifiETH]: {\n [Chain.Mainnet]: '0x196ead472583bc1e9af7a05f860d9857e1bd3dcc',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [UnifiToken.unifiUSD]: {\n [Chain.Mainnet]: '0x82c40e07277eBb92935f79cE92268F80dDc7caB4',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [UnifiToken.unifiBTC]: {\n [Chain.Mainnet]: '0x170d847a8320f3b6a77ee15b0cae430e3ec933a0',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [UnifiToken.pufETHs]: {\n [Chain.Mainnet]: '0x62a4ce0722ee65635c0f8339dd814d549b6f6735',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n};\n\nexport const TOKENS_PERMIT_VERSION: { [key in AnyToken]: string } = {\n // USDC does not support permit signatures (ERC20Permit).\n // https://ethereum.stackexchange.com/questions/166254/usdt-contract-dont-have-erc20permit\n [Token.USDT]: '',\n // USDC does not support permit signatures (ERC20Permit).\n [Token.USDC]: '',\n // DAI does not support permit signatures (ERC20Permit).\n [Token.DAI]: '',\n // WETH does not support permit signatures (ERC20Permit).\n [Token.WETH]: '',\n [Token.stETH]: '2',\n // Puffer Quest v1 uses version 1 for wstETH.\n [Token.wstETH]: '1',\n // https://github.com/etherfi-protocol/smart-contracts/blob/7c66e571df4fe7ec502a3c325b623bc52349ef9d/src/EETH.sol#L55\n [Token.eETH]: '1',\n // https://etherscan.io/token/0xbe9895146f7af43049ca1c1ae358b0541ea49704#readProxyContract#F26\n [Token.cbETH]: '2',\n [Token.ALT]: '1',\n [Token.pufETHwstE]: 'v7.0.0',\n [Token.pufETH]: '1',\n [Token.xPufETH]: '1',\n [Token.ctTACpufETH]: '',\n // https://etherscan.io/address/0xf2e97704a567e003ed97f2d0976c45b2dda766a0#readProxyContract#F39\n [Token.tacpufETH]: 'v0.5.0',\n [Token.WBTC]: '',\n [Token.LBTC]: '',\n [Token.tBTC]: '',\n [Token.cbBTC]: '',\n [Token.pumpBTC]: '',\n [Token.SolvBTC]: '',\n [Token.PUFFER]: '1',\n [Token.vePUFFER]: '1',\n [Token.CARROT]: '1',\n [Token.lvlUSD]: '1',\n // `slvlUSD` supports permit but the transactions are reverting now\n // for some reason.\n [Token.slvlUSD]: '',\n [Token.mtwCARROT]: '',\n [Token.sCARROT]: '',\n [Token.LINK]: '',\n [Token.TEST]: '',\n [Token.VT]: '1',\n [Token.EIGEN]: '1',\n [Token.ARPA]: '1',\n\n // UniFi Tokens\n // https://etherscan.io/address/0x196ead472583bc1e9af7a05f860d9857e1bd3dcc#code#F7#L172\n [UnifiToken.unifiETH]: '1',\n // https://etherscan.io/address/0x82c40e07277eBb92935f79cE92268F80dDc7caB4#code#F7#L172\n [UnifiToken.unifiUSD]: '1',\n // https://etherscan.io/address/0x170d847a8320f3b6a77ee15b0cae430e3ec933a0#code#F7#L172\n [UnifiToken.unifiBTC]: '1',\n // https://etherscan.io/address/0x62a4ce0722ee65635c0f8339dd814d549b6f6735#code#F7#L172\n [UnifiToken.pufETHs]: '1',\n};\n\nexport const TOKENS_SALT: Partial<{\n [key in AnyToken]: { [chain in Chain]: Address };\n}> = {\n [Token.pufETHwstE]: {\n // Taken from\n // https://etherscan.io/token/0xeeda34a377dd0ca676b9511ee1324974fa8d980d#readContract#F39.\n [Chain.Mainnet]:\n '0x0e986ed5610121905f03fd3850cebcc00f66166fc3ab760acb4e087d735d9457',\n [Chain.Holesky]:\n '0x0000000000000000000000000000000000000000000000000000000000000000',\n },\n};\n"],"names":["Token","UnifiToken","TOKENS_ADDRESSES","Chain","TOKENS_PERMIT_VERSION","TOKENS_SALT"],"mappings":"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"}
1
+ {"version":3,"file":"tokens.js","sources":["../../lib/contracts/tokens.ts"],"sourcesContent":["import { Address } from 'viem';\nimport { Chain } from '../chains/constants';\n\nexport enum Token {\n USDT = 'USDT',\n USDC = 'USDC',\n DAI = 'DAI',\n WETH = 'WETH',\n stETH = 'stETH',\n wstETH = 'wstETH',\n eETH = 'eETH',\n cbETH = 'cbETH',\n ALT = 'ALT',\n pufETHwstE = 'pufETHwstE',\n pufETH = 'pufETH',\n xPufETH = 'xPufETH',\n ctTACpufETH = 'ctTACpufETH',\n tacpufETH = 'tacpufETH',\n WBTC = 'WBTC',\n LBTC = 'LBTC',\n tBTC = 'tBTC',\n cbBTC = 'cbBTC',\n pumpBTC = 'pumpBTC',\n SolvBTC = 'SolvBTC',\n PUFFER = 'PUFFER',\n vePUFFER = 'vePUFFER',\n CARROT = 'CARROT',\n lvlUSD = 'lvlUSD',\n slvlUSD = 'slvlUSD',\n mtwCARROT = 'mtwCARROT',\n sCARROT = 'sCARROT',\n LINK = 'LINK',\n TEST = 'TEST',\n VT = 'VT',\n EIGEN = 'EIGEN',\n ARPA = 'ARPA',\n vlPUFFER = 'vlPUFFER',\n}\n\nexport enum UnifiToken {\n unifiETH = 'unifiETH',\n unifiUSD = 'unifiUSD',\n unifiBTC = 'unifiBTC',\n // Symbiotic pufETH.\n pufETHs = 'pufETHs',\n}\n\nexport type AnyToken = Token | UnifiToken;\n\nexport const TOKENS_ADDRESSES: {\n [key in AnyToken]: { [chain in Chain]: Address };\n} = {\n [Token.VT]: {\n [Chain.Mainnet]: '0x7D26AD6F6BA9D6bA1de0218Ae5e20CD3a273a55A',\n [Chain.Holesky]: '0xB028194785178a94Fe608994A4d5AD84c285A640',\n },\n [Token.TEST]: {\n [Chain.Sepolia]: '0xd26e3540a0a368845b234736a0700e0a5a821bba',\n [Chain.OptimismSepolia]: '0x7Fa13D6CB44164ea09dF8BCc673A8849092D435b',\n },\n [Token.LINK]: {\n [Chain.BaseSepolia]: '0xe4ab69c077896252fafbd49efd26b5d171a32410',\n [Chain.OptimismSepolia]: '0xE4aB69C077896252FAFBD49EFD26B5D171A32410',\n },\n [Token.USDT]: {\n [Chain.Mainnet]: '0xdac17f958d2ee523a2206206994597c13d831ec7',\n [Chain.Holesky]: '0xd5bef2c64f418fd460319521d37862327122e3bc',\n [Chain.Sepolia]: '0xaa8e23fb1079ea71e0a56f48a2aa51851d8433d0',\n },\n [Token.USDC]: {\n [Chain.Mainnet]: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n [Chain.Holesky]: '0x64Cc0de0429bcb87e875905a0c313ec88f6d1d3E',\n },\n [Token.DAI]: {\n [Chain.Mainnet]: '0x6b175474e89094c44da98b954eedeac495271d0f',\n [Chain.Holesky]: '0x4478905505ddfb7eA1c8A9f46eAEC3695cE542ac',\n },\n [Token.WETH]: {\n [Chain.Mainnet]: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',\n [Chain.Holesky]: '0x1d181cBd1825e9eBC6AD966878D555A7215FF4F0',\n [Chain.Hoodi]: '0x251609d3e04165CA5CfaBa5DEE70A4e47863D060',\n },\n [Token.stETH]: {\n [Chain.Mainnet]: '0xae7ab96520de3a18e5e111b5eaab095312d7fe84',\n [Chain.Holesky]: '0x3F1c547b21f65e10480dE3ad8E19fAAC46C95034',\n },\n [Token.wstETH]: {\n [Chain.Mainnet]: '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0',\n [Chain.Holesky]: '0x8d09a4502Cc8Cf1547aD300E066060D043f6982D',\n },\n [Token.eETH]: {\n [Chain.Mainnet]: '0x35fa164735182de50811e8e2e824cfb9b6118ac2',\n [Chain.Holesky]: '0x7ba2ee123b5977e3da040e1eacb3a61c82c17876',\n },\n [Token.cbETH]: {\n [Chain.Mainnet]: '0xbe9895146f7af43049ca1c1ae358b0541ea49704',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.ALT]: {\n [Chain.Mainnet]: '0x8457ca5040ad67fdebbcc8edce889a335bc0fbfb',\n [Chain.Holesky]: '0xaf5588a571b42c7e50bd440d80f9bf94a4db94ee',\n },\n [Token.pufETHwstE]: {\n [Chain.Mainnet]: '0xeeda34a377dd0ca676b9511ee1324974fa8d980d',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.pufETH]: {\n [Chain.Mainnet]: '0xd9a442856c234a39a81a089c06451ebaa4306a72',\n [Chain.Holesky]: '0x9196830bB4c05504E0A8475A0aD566AceEB6BeC9',\n [Chain.Soneium]: '0x6c460b2c6D6719562D5dA43E5152B375e79B9A8B',\n [Chain.Arbitrum]: '0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF',\n [Chain.Berachain]: '0x417b0Ff8358Eb72867Da92225CaB99BCD5e6F205',\n [Chain.TAC]: '0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF',\n },\n [Token.xPufETH]: {\n [Chain.Mainnet]: '0xD7D2802f6b19843ac4DfE25022771FD83b5A7464',\n [Chain.Base]: '0x23dA5F2d509cb43A59d43C108a43eDf34510eff1',\n [Chain.Bsc]: '0x64274835D88F5c0215da8AADd9A5f2D2A2569381',\n [Chain.ApeChain]: '0x6234E5ef39B12EFdFcbd99dd7F452F27F3fEAE3b',\n [Chain.Zircuit]: '0x9346A5043C590133FE900aec643D9622EDddBA57',\n },\n [Token.ctTACpufETH]: {\n [Chain.Mainnet]: '0x78f314241df1ac151bfd0413eeb51979515f6abd',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.tacpufETH]: {\n [Chain.Mainnet]: '0xf2e97704a567e003ed97f2d0976c45b2dda766a0',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.WBTC]: {\n [Chain.Mainnet]: '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.LBTC]: {\n [Chain.Mainnet]: '0x8236a87084f8b84306f72007f36f2618a5634494',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.tBTC]: {\n [Chain.Mainnet]: '0x18084fbA666a33d37592fA2633fD49a74DD93a88',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.cbBTC]: {\n [Chain.Mainnet]: '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.pumpBTC]: {\n [Chain.Mainnet]: '0xf469fbd2abcd6b9de8e169d128226c0fc90a012e',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.SolvBTC]: {\n [Chain.Mainnet]: '0x7a56e1c57c7475ccf742a1832b028f0456652f97',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.PUFFER]: {\n [Chain.Mainnet]: '0x4d1c297d39c5c1277964d0e3f8aa901493664530',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.vePUFFER]: {\n [Chain.Mainnet]: '0xA55eD5808aeCDF23AE3782C1443185f5D2363ce7',\n },\n [Token.CARROT]: {\n [Chain.Mainnet]: '0x282a69142bac47855c3fbe1693fcc4ba3b4d5ed6',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.lvlUSD]: {\n [Chain.Mainnet]: '0x7C1156E515aA1A2E851674120074968C905aAF37',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.slvlUSD]: {\n [Chain.Mainnet]: '0x4737d9b4592b40d51e110b94c9c043c6654067ae',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.mtwCARROT]: {\n [Chain.Mainnet]: '0x8A5A5DE9db5770123Ff2145F59e9F20047f0A8EC',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.sCARROT]: {\n [Chain.Mainnet]: '0x99c599227c65132822f0290d9e5b4b0430d6c0d6',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.EIGEN]: {\n [Chain.Mainnet]: '0xec53bF9167f50cDEB3Ae105f56099aaaB9061F83',\n },\n [Token.ARPA]: {\n [Chain.Mainnet]: '0xBA50933C268F567BDC86E1aC131BE072C6B0b71a',\n },\n\n // UniFi Tokens\n [UnifiToken.unifiETH]: {\n [Chain.Mainnet]: '0x196ead472583bc1e9af7a05f860d9857e1bd3dcc',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [UnifiToken.unifiUSD]: {\n [Chain.Mainnet]: '0x82c40e07277eBb92935f79cE92268F80dDc7caB4',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [UnifiToken.unifiBTC]: {\n [Chain.Mainnet]: '0x170d847a8320f3b6a77ee15b0cae430e3ec933a0',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [UnifiToken.pufETHs]: {\n [Chain.Mainnet]: '0x62a4ce0722ee65635c0f8339dd814d549b6f6735',\n [Chain.Holesky]: '0x0000000000000000000000000000000000000000',\n },\n [Token.vlPUFFER]: {\n [Chain.Mainnet]: '0xe4c36adb90e936041776ddb87851ec38affd1499',\n },\n};\n\nexport const TOKENS_PERMIT_VERSION: { [key in AnyToken]: string } = {\n // USDC does not support permit signatures (ERC20Permit).\n // https://ethereum.stackexchange.com/questions/166254/usdt-contract-dont-have-erc20permit\n [Token.USDT]: '',\n // USDC does not support permit signatures (ERC20Permit).\n [Token.USDC]: '',\n // DAI does not support permit signatures (ERC20Permit).\n [Token.DAI]: '',\n // WETH does not support permit signatures (ERC20Permit).\n [Token.WETH]: '',\n [Token.stETH]: '2',\n // Puffer Quest v1 uses version 1 for wstETH.\n [Token.wstETH]: '1',\n // https://github.com/etherfi-protocol/smart-contracts/blob/7c66e571df4fe7ec502a3c325b623bc52349ef9d/src/EETH.sol#L55\n [Token.eETH]: '1',\n // https://etherscan.io/token/0xbe9895146f7af43049ca1c1ae358b0541ea49704#readProxyContract#F26\n [Token.cbETH]: '2',\n [Token.ALT]: '1',\n [Token.pufETHwstE]: 'v7.0.0',\n [Token.pufETH]: '1',\n [Token.xPufETH]: '1',\n [Token.ctTACpufETH]: '',\n // https://etherscan.io/address/0xf2e97704a567e003ed97f2d0976c45b2dda766a0#readProxyContract#F39\n [Token.tacpufETH]: 'v0.5.0',\n [Token.WBTC]: '',\n [Token.LBTC]: '',\n [Token.tBTC]: '',\n [Token.cbBTC]: '',\n [Token.pumpBTC]: '',\n [Token.SolvBTC]: '',\n [Token.PUFFER]: '1',\n [Token.vePUFFER]: '1',\n [Token.CARROT]: '1',\n [Token.lvlUSD]: '1',\n // `slvlUSD` supports permit but the transactions are reverting now\n // for some reason.\n [Token.slvlUSD]: '',\n [Token.mtwCARROT]: '',\n [Token.sCARROT]: '',\n [Token.LINK]: '',\n [Token.TEST]: '',\n [Token.VT]: '1',\n [Token.EIGEN]: '1',\n [Token.ARPA]: '1',\n\n // UniFi Tokens\n // https://etherscan.io/address/0x196ead472583bc1e9af7a05f860d9857e1bd3dcc#code#F7#L172\n [UnifiToken.unifiETH]: '1',\n // https://etherscan.io/address/0x82c40e07277eBb92935f79cE92268F80dDc7caB4#code#F7#L172\n [UnifiToken.unifiUSD]: '1',\n // https://etherscan.io/address/0x170d847a8320f3b6a77ee15b0cae430e3ec933a0#code#F7#L172\n [UnifiToken.unifiBTC]: '1',\n // https://etherscan.io/address/0x62a4ce0722ee65635c0f8339dd814d549b6f6735#code#F7#L172\n [UnifiToken.pufETHs]: '1',\n [Token.vlPUFFER]: '1',\n};\n\nexport const TOKENS_SALT: Partial<{\n [key in AnyToken]: { [chain in Chain]: Address };\n}> = {\n [Token.pufETHwstE]: {\n // Taken from\n // https://etherscan.io/token/0xeeda34a377dd0ca676b9511ee1324974fa8d980d#readContract#F39.\n [Chain.Mainnet]:\n '0x0e986ed5610121905f03fd3850cebcc00f66166fc3ab760acb4e087d735d9457',\n [Chain.Holesky]:\n '0x0000000000000000000000000000000000000000000000000000000000000000',\n },\n};\n"],"names":["Token","UnifiToken","TOKENS_ADDRESSES","Chain","TOKENS_PERMIT_VERSION","TOKENS_SALT"],"mappings":";AAGY,IAAAA,sBAAAA,OACVA,EAAA,OAAO,QACPA,EAAA,OAAO,QACPA,EAAA,MAAM,OACNA,EAAA,OAAO,QACPA,EAAA,QAAQ,SACRA,EAAA,SAAS,UACTA,EAAA,OAAO,QACPA,EAAA,QAAQ,SACRA,EAAA,MAAM,OACNA,EAAA,aAAa,cACbA,EAAA,SAAS,UACTA,EAAA,UAAU,WACVA,EAAA,cAAc,eACdA,EAAA,YAAY,aACZA,EAAA,OAAO,QACPA,EAAA,OAAO,QACPA,EAAA,OAAO,QACPA,EAAA,QAAQ,SACRA,EAAA,UAAU,WACVA,EAAA,UAAU,WACVA,EAAA,SAAS,UACTA,EAAA,WAAW,YACXA,EAAA,SAAS,UACTA,EAAA,SAAS,UACTA,EAAA,UAAU,WACVA,EAAA,YAAY,aACZA,EAAA,UAAU,WACVA,EAAA,OAAO,QACPA,EAAA,OAAO,QACPA,EAAA,KAAK,MACLA,EAAA,QAAQ,SACRA,EAAA,OAAO,QACPA,EAAA,WAAW,YAjCDA,IAAAA,KAAA,CAAA,CAAA,GAoCAC,sBAAAA,OACVA,EAAA,WAAW,YACXA,EAAA,WAAW,YACXA,EAAA,WAAW,YAEXA,EAAA,UAAU,WALAA,IAAAA,KAAA,CAAA,CAAA;AAUL,MAAMC,IAET;AAAA,EACD,IAAW;AAAA,IACV,CAACC,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,MAAa;AAAA,IACZ,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,eAAe,GAAG;AAAA,EAC3B;AAAA,EACC,MAAa;AAAA,IACZ,CAACA,EAAM,WAAW,GAAG;AAAA,IACrB,CAACA,EAAM,eAAe,GAAG;AAAA,EAC3B;AAAA,EACC,MAAa;AAAA,IACZ,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,MAAa;AAAA,IACZ,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,KAAY;AAAA,IACX,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,MAAa;AAAA,IACZ,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,KAAK,GAAG;AAAA,EACjB;AAAA,EACC,OAAc;AAAA,IACb,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,QAAe;AAAA,IACd,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,MAAa;AAAA,IACZ,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,OAAc;AAAA,IACb,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,KAAY;AAAA,IACX,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,YAAmB;AAAA,IAClB,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,QAAe;AAAA,IACd,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,QAAQ,GAAG;AAAA,IAClB,CAACA,EAAM,SAAS,GAAG;AAAA,IACnB,CAACA,EAAM,GAAG,GAAG;AAAA,EACf;AAAA,EACC,SAAgB;AAAA,IACf,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,IAAI,GAAG;AAAA,IACd,CAACA,EAAM,GAAG,GAAG;AAAA,IACb,CAACA,EAAM,QAAQ,GAAG;AAAA,IAClB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,aAAoB;AAAA,IACnB,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,WAAkB;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,MAAa;AAAA,IACZ,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,MAAa;AAAA,IACZ,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,MAAa;AAAA,IACZ,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,OAAc;AAAA,IACb,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,SAAgB;AAAA,IACf,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,SAAgB;AAAA,IACf,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,QAAe;AAAA,IACd,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,UAAiB;AAAA,IAChB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,QAAe;AAAA,IACd,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,QAAe;AAAA,IACd,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,SAAgB;AAAA,IACf,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,WAAkB;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,SAAgB;AAAA,IACf,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,OAAc;AAAA,IACb,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,MAAa;AAAA,IACZ,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA;AAAA,EAGC,UAAsB;AAAA,IACrB,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,UAAsB;AAAA,IACrB,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,UAAsB;AAAA,IACrB,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,SAAqB;AAAA,IACpB,CAACA,EAAM,OAAO,GAAG;AAAA,IACjB,CAACA,EAAM,OAAO,GAAG;AAAA,EACnB;AAAA,EACC,UAAiB;AAAA,IAChB,CAACA,EAAM,OAAO,GAAG;AAAA,EAAA;AAErB,GAEaC,IAAuD;AAAA;AAAA;AAAA,EAGjE,MAAa;AAAA;AAAA,EAEb,MAAa;AAAA;AAAA,EAEb,KAAY;AAAA;AAAA,EAEZ,MAAa;AAAA,EACb,OAAc;AAAA;AAAA,EAEd,QAAe;AAAA;AAAA,EAEf,MAAa;AAAA;AAAA,EAEb,OAAc;AAAA,EACd,KAAY;AAAA,EACZ,YAAmB;AAAA,EACnB,QAAe;AAAA,EACf,SAAgB;AAAA,EAChB,aAAoB;AAAA;AAAA,EAEpB,WAAkB;AAAA,EAClB,MAAa;AAAA,EACb,MAAa;AAAA,EACb,MAAa;AAAA,EACb,OAAc;AAAA,EACd,SAAgB;AAAA,EAChB,SAAgB;AAAA,EAChB,QAAe;AAAA,EACf,UAAiB;AAAA,EACjB,QAAe;AAAA,EACf,QAAe;AAAA;AAAA;AAAA,EAGf,SAAgB;AAAA,EAChB,WAAkB;AAAA,EAClB,SAAgB;AAAA,EAChB,MAAa;AAAA,EACb,MAAa;AAAA,EACb,IAAW;AAAA,EACX,OAAc;AAAA,EACd,MAAa;AAAA;AAAA;AAAA,EAIb,UAAsB;AAAA;AAAA,EAEtB,UAAsB;AAAA;AAAA,EAEtB,UAAsB;AAAA;AAAA,EAEtB,SAAqB;AAAA,EACrB,UAAiB;AACpB,GAEaC,IAER;AAAA,EACF,YAAmB;AAAA;AAAA;AAAA,IAGlB,CAACF,EAAM,OAAO,GACZ;AAAA,IACF,CAACA,EAAM,OAAO,GACZ;AAAA,EAAA;AAEN;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="1.25.3",o=e;exports.version=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="1.25.4",o=e;exports.version=o;
2
2
  //# sourceMappingURL=version.cjs.map
@@ -1,4 +1,4 @@
1
- const o = "1.25.3", n = o;
1
+ const o = "1.25.4", n = o;
2
2
  export {
3
3
  n as version
4
4
  };