@pufferfinance/puffer-sdk 1.22.2 → 1.23.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/puffer-client-helpers.cjs +1 -1
- package/dist/api/puffer-client-helpers.js +13 -13
- package/dist/api/puffer-client.cjs +1 -1
- package/dist/api/puffer-client.cjs.map +1 -1
- package/dist/api/puffer-client.d.ts +3 -0
- package/dist/api/puffer-client.js +30 -23
- package/dist/api/puffer-client.js.map +1 -1
- package/dist/{ccip-ChHXXL5d.js → ccip-CiQCCFUl.js} +14 -14
- package/dist/{ccip-ChHXXL5d.js.map → ccip-CiQCCFUl.js.map} +1 -1
- package/dist/{ccip-oOJ9rRj3.cjs → ccip-DIWF4nDh.cjs} +2 -2
- package/dist/{ccip-oOJ9rRj3.cjs.map → ccip-DIWF4nDh.cjs.map} +1 -1
- package/dist/chains/constants.cjs +1 -1
- package/dist/chains/constants.js +1 -1
- package/dist/{constants-LC89CXNv.js → constants-BaHwPdbi.js} +60 -60
- package/dist/{constants-LC89CXNv.js.map → constants-BaHwPdbi.js.map} +1 -1
- package/dist/{constants-BI6T6ZbJ.cjs → constants-c-vATmlG.cjs} +2 -2
- package/dist/{constants-BI6T6ZbJ.cjs.map → constants-c-vATmlG.cjs.map} +1 -1
- package/dist/contracts/abis/mainnet/InstitutionalAccessManager.cjs +2 -0
- package/dist/contracts/abis/mainnet/InstitutionalAccessManager.cjs.map +1 -0
- package/dist/contracts/abis/mainnet/InstitutionalAccessManager.d.ts +513 -0
- package/dist/contracts/abis/mainnet/InstitutionalAccessManager.js +310 -0
- package/dist/contracts/abis/mainnet/InstitutionalAccessManager.js.map +1 -0
- package/dist/contracts/addresses.cjs +1 -1
- package/dist/contracts/addresses.js +1 -1
- package/dist/contracts/handlers/carrot-staking-handler.cjs +1 -1
- package/dist/contracts/handlers/carrot-staking-handler.js +2 -2
- package/dist/contracts/handlers/concrete-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/concrete-vault-handler.js +2 -2
- package/dist/contracts/handlers/distributor-handler.cjs +1 -1
- package/dist/contracts/handlers/distributor-handler.js +2 -2
- package/dist/contracts/handlers/erc20-permit-handler.cjs +1 -1
- package/dist/contracts/handlers/erc20-permit-handler.js +3 -3
- package/dist/contracts/handlers/guardian-module-handler.cjs +1 -1
- package/dist/contracts/handlers/guardian-module-handler.js +2 -2
- package/dist/contracts/handlers/institutional-access-manager-handler.cjs +2 -0
- package/dist/contracts/handlers/institutional-access-manager-handler.cjs.map +1 -0
- package/dist/contracts/handlers/institutional-access-manager-handler.d.ts +15374 -0
- package/dist/contracts/handlers/institutional-access-manager-handler.js +504 -0
- package/dist/contracts/handlers/institutional-access-manager-handler.js.map +1 -0
- package/dist/contracts/handlers/institutional-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/institutional-vault-handler.js +2 -2
- package/dist/contracts/handlers/l1-reward-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/l1-reward-manager-handler.js +2 -2
- package/dist/contracts/handlers/l2-reward-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/l2-reward-manager-handler.js +2 -2
- package/dist/contracts/handlers/mtw-carrot-handler.cjs +1 -1
- package/dist/contracts/handlers/mtw-carrot-handler.js +2 -2
- package/dist/contracts/handlers/nucleus-accountant-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-accountant-handler.js +1 -1
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.js +2 -2
- package/dist/contracts/handlers/nucleus-boring-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-boring-vault-handler.js +2 -2
- package/dist/contracts/handlers/nucleus-teller-handler.cjs +1 -1
- package/dist/contracts/handlers/nucleus-teller-handler.js +2 -2
- package/dist/contracts/handlers/puf-locker-handler.cjs +1 -1
- package/dist/contracts/handlers/puf-locker-handler.js +2 -2
- package/dist/contracts/handlers/puffer-depositor-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-depositor-handler.js +2 -2
- package/dist/contracts/handlers/puffer-l2-depositor-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-l2-depositor-handler.js +2 -2
- package/dist/contracts/handlers/puffer-oracle-v2-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-oracle-v2-handler.js +2 -2
- package/dist/contracts/handlers/puffer-protocol-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-protocol-handler.js +2 -2
- package/dist/contracts/handlers/puffer-vault-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-vault-handler.js +2 -2
- package/dist/contracts/handlers/puffer-withdrawal-manager-handler.cjs +1 -1
- package/dist/contracts/handlers/puffer-withdrawal-manager-handler.js +2 -2
- package/dist/contracts/handlers/validator-ticket-handler.cjs +1 -1
- package/dist/contracts/handlers/validator-ticket-handler.js +2 -2
- package/dist/contracts/tokens.cjs +1 -1
- package/dist/contracts/tokens.cjs.map +1 -1
- package/dist/contracts/tokens.d.ts +2 -1
- package/dist/contracts/tokens.js +10 -6
- package/dist/contracts/tokens.js.map +1 -1
- package/dist/contracts/vaults-addresses.cjs +1 -1
- package/dist/contracts/vaults-addresses.js +1 -1
- package/dist/{createWalletClient-BI9ya5Hq.js → createWalletClient-D74YRepQ.js} +44 -44
- package/dist/{createWalletClient-BI9ya5Hq.js.map → createWalletClient-D74YRepQ.js.map} +1 -1
- package/dist/{createWalletClient-KYWq_Sx_.cjs → createWalletClient-DKSH6l9_.cjs} +2 -2
- package/dist/{createWalletClient-KYWq_Sx_.cjs.map → createWalletClient-DKSH6l9_.cjs.map} +1 -1
- package/dist/{getContract-Ck2VtUkY.js → getContract-DGV8J5xI.js} +11 -11
- package/dist/{getContract-Ck2VtUkY.js.map → getContract-DGV8J5xI.js.map} +1 -1
- package/dist/{getContract-CPwqa1sR.cjs → getContract-RNLlK54b.cjs} +2 -2
- package/dist/{getContract-CPwqa1sR.cjs.map → getContract-RNLlK54b.cjs.map} +1 -1
- package/dist/main.cjs +1 -1
- package/dist/main.js +1 -1
- package/dist/{secp256k1-rB-jsNOU.js → secp256k1-B-LxKJrQ.js} +2 -2
- package/dist/{secp256k1-rB-jsNOU.js.map → secp256k1-B-LxKJrQ.js.map} +1 -1
- package/dist/secp256k1-CC-cv1vD.cjs +2 -0
- package/dist/{secp256k1-93KDDbJS.cjs.map → secp256k1-CC-cv1vD.cjs.map} +1 -1
- package/dist/utils/version.cjs +1 -1
- package/dist/utils/version.js +1 -1
- package/dist/{writeContract-DlZ0jYhZ.js → writeContract-BU3yK-Xj.js} +513 -512
- package/dist/{writeContract-DlZ0jYhZ.js.map → writeContract-BU3yK-Xj.js.map} +1 -1
- package/dist/{writeContract-DPtg3nGu.cjs → writeContract-CKqv1dsa.cjs} +17 -17
- package/dist/{writeContract-DPtg3nGu.cjs.map → writeContract-CKqv1dsa.cjs.map} +1 -1
- package/package.json +1 -1
- package/dist/secp256k1-93KDDbJS.cjs +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const R=require("../constants-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const R=require("../constants-c-vATmlG.cjs"),g=require("../createWalletClient-DKSH6l9_.cjs"),E=require("../writeContract-CKqv1dsa.cjs");function S(n,e={}){const{key:l="custom",methods:h,name:i="Custom Provider",retryDelay:w}=e;return({retryCount:p})=>g.createTransport({key:l,methods:h,name:i,request:n.request.bind(n),retryCount:e.retryCount??p,retryDelay:w,type:"custom"})}function v(n,e={}){const{key:l="fallback",name:h="Fallback",rank:i=!1,shouldThrow:w=P,retryCount:p,retryDelay:q}=e;return({chain:d,pollingInterval:_=4e3,timeout:o,...T})=>{let u=n,b=()=>{};const x=g.createTransport({key:l,name:h,async request({method:t,params:r}){let y;const f=async(a=0)=>{const m=u[a]({...T,chain:d,retryCount:0,timeout:o});try{const s=await m.request({method:t,params:r});return b({method:t,params:r,response:s,transport:m,status:"success"}),s}catch(s){if(b({error:s,method:t,params:r,transport:m,status:"error"}),w(s)||a===u.length-1||(y??(y=u.slice(a+1).some(c=>{const{include:C,exclude:M}=c({chain:d}).config.methods||{};return C?C.includes(t):M?!M.includes(t):!0})),!y))throw s;return f(a+1)}};return f()},retryCount:p,retryDelay:q,type:"fallback"},{onResponse:t=>b=t,transports:u.map(t=>t({chain:d,retryCount:0}))});if(i){const t=typeof i=="object"?i:{};W({chain:d,interval:t.interval??_,onTransports:r=>u=r,ping:t.ping,sampleCount:t.sampleCount,timeout:t.timeout,transports:u,weights:t.weights})}return x}}function P(n){return!!("code"in n&&typeof n.code=="number"&&(n.code===E.TransactionRejectedRpcError.code||n.code===E.UserRejectedRequestError.code||R.ExecutionRevertedError.nodeMessage.test(n.message)||n.code===5e3))}function W({chain:n,interval:e=4e3,onTransports:l,ping:h,sampleCount:i=10,timeout:w=1e3,transports:p,weights:q={}}){const{stability:d=.7,latency:_=.3}=q,o=[],T=async()=>{const u=await Promise.all(p.map(async t=>{const r=t({chain:n,retryCount:0,timeout:w}),y=Date.now();let f,a;try{await(h?h({transport:r}):r.request({method:"net_listening"})),a=1}catch{a=0}finally{f=Date.now()}return{latency:f-y,success:a}}));o.push(u),o.length>i&&o.shift();const b=Math.max(...o.map(t=>Math.max(...t.map(({latency:r})=>r)))),x=p.map((t,r)=>{const y=o.map(c=>c[r].latency),a=1-y.reduce((c,C)=>c+C,0)/y.length/b,m=o.map(c=>c[r].success),s=m.reduce((c,C)=>c+C,0)/m.length;return s===0?[0,r]:[_*a+d*s,r]}).sort((t,r)=>r[0]-t[0]);l(x.map(([,t])=>p[t])),await E.wait(e),T()};T()}class k{static createPublicClient(e){return g.createPublicClient({chain:R.VIEM_CHAINS[e.chain],transport:k.extractTransportConfig(e)})}static createWalletClient(e){return g.createWalletClient({chain:R.VIEM_CHAINS[e.chain],transport:k.extractTransportConfig(e)})}static extractTransportConfig(e){return"rpcUrls"in e?v(e.rpcUrls.map(l=>g.http(l))):S(e.provider,e.config)}}exports.PufferClientHelpers=k;
|
|
2
2
|
//# sourceMappingURL=puffer-client-helpers.cjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { E as v, V as q } from "../constants-
|
|
2
|
-
import { b as E, a as D, c as M, h as U } from "../createWalletClient-
|
|
3
|
-
import { T as W, U as j,
|
|
1
|
+
import { E as v, V as q } from "../constants-BaHwPdbi.js";
|
|
2
|
+
import { b as E, a as D, c as M, h as U } from "../createWalletClient-D74YRepQ.js";
|
|
3
|
+
import { T as W, U as j, m as L } from "../writeContract-BU3yK-Xj.js";
|
|
4
4
|
function P(s, e = {}) {
|
|
5
5
|
const { key: l = "custom", methods: h, name: i = "Custom Provider", retryDelay: w } = e;
|
|
6
6
|
return ({ retryCount: p }) => E({
|
|
@@ -22,16 +22,16 @@ function S(s, e = {}) {
|
|
|
22
22
|
key: l,
|
|
23
23
|
name: h,
|
|
24
24
|
async request({ method: t, params: r }) {
|
|
25
|
-
let
|
|
25
|
+
let m;
|
|
26
26
|
const d = async (a = 0) => {
|
|
27
|
-
const
|
|
27
|
+
const y = u[a]({
|
|
28
28
|
...T,
|
|
29
29
|
chain: f,
|
|
30
30
|
retryCount: 0,
|
|
31
31
|
timeout: o
|
|
32
32
|
});
|
|
33
33
|
try {
|
|
34
|
-
const n = await
|
|
34
|
+
const n = await y.request({
|
|
35
35
|
method: t,
|
|
36
36
|
params: r
|
|
37
37
|
});
|
|
@@ -39,7 +39,7 @@ function S(s, e = {}) {
|
|
|
39
39
|
method: t,
|
|
40
40
|
params: r,
|
|
41
41
|
response: n,
|
|
42
|
-
transport:
|
|
42
|
+
transport: y,
|
|
43
43
|
status: "success"
|
|
44
44
|
}), n;
|
|
45
45
|
} catch (n) {
|
|
@@ -47,12 +47,12 @@ function S(s, e = {}) {
|
|
|
47
47
|
error: n,
|
|
48
48
|
method: t,
|
|
49
49
|
params: r,
|
|
50
|
-
transport:
|
|
50
|
+
transport: y,
|
|
51
51
|
status: "error"
|
|
52
|
-
}), w(n) || a === u.length - 1 || (
|
|
52
|
+
}), w(n) || a === u.length - 1 || (m ?? (m = u.slice(a + 1).some((c) => {
|
|
53
53
|
const { include: C, exclude: _ } = c({ chain: f }).config.methods || {};
|
|
54
54
|
return C ? C.includes(t) : _ ? !_.includes(t) : !0;
|
|
55
|
-
})), !
|
|
55
|
+
})), !m))
|
|
56
56
|
throw n;
|
|
57
57
|
return d(a + 1);
|
|
58
58
|
}
|
|
@@ -88,7 +88,7 @@ function I(s) {
|
|
|
88
88
|
function V({ chain: s, interval: e = 4e3, onTransports: l, ping: h, sampleCount: i = 10, timeout: w = 1e3, transports: p, weights: g = {} }) {
|
|
89
89
|
const { stability: f = 0.7, latency: k = 0.3 } = g, o = [], T = async () => {
|
|
90
90
|
const u = await Promise.all(p.map(async (t) => {
|
|
91
|
-
const r = t({ chain: s, retryCount: 0, timeout: w }),
|
|
91
|
+
const r = t({ chain: s, retryCount: 0, timeout: w }), m = Date.now();
|
|
92
92
|
let d, a;
|
|
93
93
|
try {
|
|
94
94
|
await (h ? h({ transport: r }) : r.request({ method: "net_listening" })), a = 1;
|
|
@@ -97,11 +97,11 @@ function V({ chain: s, interval: e = 4e3, onTransports: l, ping: h, sampleCount:
|
|
|
97
97
|
} finally {
|
|
98
98
|
d = Date.now();
|
|
99
99
|
}
|
|
100
|
-
return { latency: d -
|
|
100
|
+
return { latency: d - m, success: a };
|
|
101
101
|
}));
|
|
102
102
|
o.push(u), o.length > i && o.shift();
|
|
103
103
|
const b = Math.max(...o.map((t) => Math.max(...t.map(({ latency: r }) => r)))), x = p.map((t, r) => {
|
|
104
|
-
const
|
|
104
|
+
const m = o.map((c) => c[r].latency), a = 1 - m.reduce((c, C) => c + C, 0) / m.length / b, y = o.map((c) => c[r].success), n = y.reduce((c, C) => c + C, 0) / y.length;
|
|
105
105
|
return n === 0 ? [0, r] : [
|
|
106
106
|
k * a + f * n,
|
|
107
107
|
r
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var s=Object.defineProperty;var u=(l,e,r)=>e in l?s(l,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):l[e]=r;var t=(l,e,r)=>u(l,typeof e!="symbol"?e+"":e,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("../constants-
|
|
1
|
+
"use strict";var s=Object.defineProperty;var u=(l,e,r)=>e in l?s(l,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):l[e]=r;var t=(l,e,r)=>u(l,typeof e!="symbol"?e+"":e,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("../constants-c-vATmlG.cjs"),o=require("../contracts/handlers/puffer-vault-handler.cjs"),d=require("../contracts/handlers/puffer-depositor-handler.cjs"),h=require("../contracts/handlers/puffer-l2-depositor-handler.cjs"),w=require("../contracts/handlers/erc20-permit-handler.cjs"),C=require("../contracts/handlers/puf-locker-handler.cjs"),p=require("../contracts/handlers/l2-reward-manager-handler.cjs"),_=require("../contracts/handlers/l1-reward-manager-handler.cjs"),f=require("../contracts/handlers/puffer-withdrawal-manager-handler.cjs"),H=require("../contracts/handlers/nucleus-boring-vault-handler.cjs"),b=require("../contracts/handlers/nucleus-teller-handler.cjs"),g=require("../contracts/handlers/nucleus-accountant-handler.cjs"),q=require("../contracts/handlers/nucleus-atomic-queue-handler.cjs"),M=require("../contracts/handlers/mtw-carrot-handler.cjs"),V=require("../contracts/handlers/carrot-staking-handler.cjs"),P=require("../contracts/handlers/distributor-handler.cjs"),A=require("../contracts/handlers/concrete-vault-handler.cjs"),m=require("../contracts/handlers/validator-ticket-handler.cjs"),k=require("../contracts/handlers/puffer-oracle-v2-handler.cjs"),R=require("../contracts/handlers/puffer-protocol-handler.cjs"),T=require("../contracts/handlers/guardian-module-handler.cjs"),L=require("../contracts/handlers/institutional-vault-handler.cjs"),v=require("../contracts/handlers/institutional-access-manager-handler.cjs"),n=require("../createWalletClient-DKSH6l9_.cjs");class D{constructor(e,r,a){t(this,"walletClient");t(this,"publicClient");t(this,"erc20Permit");t(this,"vault");t(this,"depositor");t(this,"l2Depositor");t(this,"pufLocker");t(this,"l2RewardManager");t(this,"l1RewardManager");t(this,"pufferWithdrawalManager");t(this,"nucleusBoringVault");t(this,"nucleusTeller");t(this,"nucleusAccountant");t(this,"nucleusAtomicQueue");t(this,"mtwCarrot");t(this,"carrotStaker");t(this,"distributor");t(this,"concreteVault");t(this,"validatorTicket");t(this,"pufferOracleV2");t(this,"pufferProtocol");t(this,"guardianModule");t(this,"institutionalVault");t(this,"institutionalAccessManager");const i=c.VIEM_CHAINS[e];this.walletClient=r??n.createWalletClient({chain:i,transport:n.http()}),this.publicClient=a??n.createPublicClient({chain:i,transport:n.http()}),this.erc20Permit=new w.ERC20PermitHandler(e,this.walletClient,this.publicClient),this.vault=new o.PufferVaultHandler(e,this.walletClient,this.publicClient),this.depositor=new d.PufferDepositorHandler(e,this.walletClient,this.publicClient),this.l2Depositor=new h.PufferL2DepositorHandler(e,this.walletClient,this.publicClient),this.pufLocker=new C.PufLockerHandler(e,this.walletClient,this.publicClient),this.l2RewardManager=new p.L2RewardManagerHandler(e,this.walletClient,this.publicClient),this.l1RewardManager=new _.L1RewardManagerHandler(e,this.walletClient,this.publicClient),this.pufferWithdrawalManager=new f.PufferWithdrawalManagerHandler(e,this.walletClient,this.publicClient),this.nucleusBoringVault=new H.NucleusBoringVaultHandler(e,this.walletClient,this.publicClient),this.nucleusTeller=new b.NucleusTellerHandler(e,this.walletClient,this.publicClient),this.nucleusAccountant=new g.NucleusAccountantHandler(e,this.walletClient,this.publicClient),this.nucleusAtomicQueue=new q.NucleusAtomicQueueHandler(e,this.walletClient,this.publicClient),this.mtwCarrot=new M.MtwCarrotHandler(e,this.walletClient,this.publicClient),this.carrotStaker=new V.CarrotStakingHandler(e,this.walletClient,this.publicClient),this.distributor=new P.DistributorHandler(e,this.walletClient,this.publicClient),this.concreteVault=new A.ConcreteVaultHandler(e,this.walletClient,this.publicClient),this.validatorTicket=new m.ValidatorTicketHandler(e,this.walletClient,this.publicClient),this.pufferOracleV2=new k.PufferOracleV2Handler(e,this.walletClient,this.publicClient),this.pufferProtocol=new R.PufferProtocolHandler(e,this.walletClient,this.publicClient),this.guardianModule=new T.GuardianModuleHandler(e,this.walletClient,this.publicClient),this.institutionalVault=new L.InstitutionalVaultHandler(e,this.walletClient,this.publicClient),this.institutionalAccessManager=new v.InstitutionalAccessManagerHandler(e,this.walletClient,this.publicClient)}async requestAddresses(){return await this.walletClient.requestAddresses()}}exports.PufferClient=D;
|
|
2
2
|
//# sourceMappingURL=puffer-client.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"puffer-client.cjs","sources":["../../lib/api/puffer-client.ts"],"sourcesContent":["import {\n PublicClient,\n WalletClient,\n createPublicClient,\n createWalletClient,\n http,\n} from 'viem';\nimport { Chain, VIEM_CHAINS } from '../chains/constants';\nimport { PufferVaultHandler } from '../contracts/handlers/puffer-vault-handler';\nimport { PufferDepositorHandler } from '../contracts/handlers/puffer-depositor-handler';\nimport { PufferL2DepositorHandler } from '../contracts/handlers/puffer-l2-depositor-handler';\nimport { ERC20PermitHandler } from '../contracts/handlers/erc20-permit-handler';\nimport { PufLockerHandler } from '../contracts/handlers/puf-locker-handler';\nimport { L2RewardManagerHandler } from '../contracts/handlers/l2-reward-manager-handler';\nimport { L1RewardManagerHandler } from '../contracts/handlers/l1-reward-manager-handler';\nimport { PufferWithdrawalManagerHandler } from '../contracts/handlers/puffer-withdrawal-manager-handler';\nimport { NucleusBoringVaultHandler } from '../contracts/handlers/nucleus-boring-vault-handler';\nimport { NucleusTellerHandler } from '../contracts/handlers/nucleus-teller-handler';\nimport { NucleusAccountantHandler } from '../contracts/handlers/nucleus-accountant-handler';\nimport { NucleusAtomicQueueHandler } from '../contracts/handlers/nucleus-atomic-queue-handler';\nimport { MtwCarrotHandler } from '../contracts/handlers/mtw-carrot-handler';\nimport { CarrotStakingHandler } from '../contracts/handlers/carrot-staking-handler';\nimport { DistributorHandler } from '../contracts/handlers/distributor-handler';\nimport { ConcreteVaultHandler } from '../contracts/handlers/concrete-vault-handler';\nimport { ValidatorTicketHandler } from '../contracts/handlers/validator-ticket-handler';\nimport { PufferOracleV2Handler } from '../contracts/handlers/puffer-oracle-v2-handler';\nimport { PufferProtocolHandler } from '../contracts/handlers/puffer-protocol-handler';\nimport { GuardianModuleHandler } from '../contracts/handlers/guardian-module-handler';\nimport { InstitutionalVaultHandler } from '../contracts/handlers/institutional-vault-handler';\n\n/**\n * The core class and the main entry point of the Puffer SDK.\n */\nexport class PufferClient {\n private walletClient: WalletClient;\n private publicClient: PublicClient;\n\n // Contract Handlers\n /** Handler for the `ERC20Permit` contract. */\n public erc20Permit: ERC20PermitHandler;\n /** Handler for the `PufferVaultV2` contract. */\n public vault: PufferVaultHandler;\n /** Handler for the `PufferDepositor` contract. */\n public depositor: PufferDepositorHandler;\n /** Handler for the `PufferL2Depositor` contract. */\n public l2Depositor: PufferL2DepositorHandler;\n /** Handler for the `PufLocker` contract. */\n public pufLocker: PufLockerHandler;\n /** Handler for the `L2RewardManager` contract. */\n public l2RewardManager: L2RewardManagerHandler;\n /** Handler for the `L1RewardManager` contract. */\n public l1RewardManager: L1RewardManagerHandler;\n /** Handler for the `PufferWithdrawalManager` contract. */\n public pufferWithdrawalManager: PufferWithdrawalManagerHandler;\n /** Handler for the `NucleusBoringVault` contract. */\n public nucleusBoringVault: NucleusBoringVaultHandler;\n /** Handler for the `NucleusTeller` contract. */\n public nucleusTeller: NucleusTellerHandler;\n /** Handler for the `NucleusAccountant` contract. */\n public nucleusAccountant: NucleusAccountantHandler;\n /** Handler for the `NucleusAtomicQueue` contract. */\n public nucleusAtomicQueue: NucleusAtomicQueueHandler;\n /** Handler for the `mtwCARROT` (Merkl Token Wrapper) contract. */\n public mtwCarrot: MtwCarrotHandler;\n /** Handler for the `CarrotStaker` contract. */\n public carrotStaker: CarrotStakingHandler;\n /** Handler for the `Distributor` contract. */\n public distributor: DistributorHandler;\n /** Handler for the `ConcreteMultiStrategyVault` contract. */\n public concreteVault: ConcreteVaultHandler;\n /** Handler for the `ValidatorTicket` contract. */\n public validatorTicket: ValidatorTicketHandler;\n /** Handler for the `PufferOracleV2` contract. */\n public pufferOracleV2: PufferOracleV2Handler;\n /** Handler for the `PufferProtocol` contract. */\n public pufferProtocol: PufferProtocolHandler;\n /** Handler for the `GuardianModule` contract. */\n public guardianModule: GuardianModuleHandler;\n /** Handler for the `InstitutionalVault` contract. */\n public institutionalVault: InstitutionalVaultHandler;\n\n /**\n * Create the Puffer Client.\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 chain: Chain,\n walletClient?: WalletClient,\n publicClient?: PublicClient,\n ) {\n const viemChain = VIEM_CHAINS[chain];\n\n /* istanbul ignore next */\n this.walletClient =\n walletClient ??\n createWalletClient({\n chain: viemChain,\n transport: http(),\n });\n this.publicClient =\n publicClient ??\n createPublicClient({\n chain: viemChain,\n transport: http(),\n });\n\n this.erc20Permit = new ERC20PermitHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.vault = new PufferVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.depositor = new PufferDepositorHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.l2Depositor = new PufferL2DepositorHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufLocker = new PufLockerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.l2RewardManager = new L2RewardManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.l1RewardManager = new L1RewardManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufferWithdrawalManager = new PufferWithdrawalManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusBoringVault = new NucleusBoringVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusTeller = new NucleusTellerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusAccountant = new NucleusAccountantHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusAtomicQueue = new NucleusAtomicQueueHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.mtwCarrot = new MtwCarrotHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.carrotStaker = new CarrotStakingHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.distributor = new DistributorHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.concreteVault = new ConcreteVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.validatorTicket = new ValidatorTicketHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufferOracleV2 = new PufferOracleV2Handler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufferProtocol = new PufferProtocolHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.guardianModule = new GuardianModuleHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.institutionalVault = new InstitutionalVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n }\n\n /**\n * Request addresses from the wallet.\n *\n * @returns An array of wallet addresses.\n */\n public async requestAddresses() {\n return await this.walletClient.requestAddresses();\n }\n}\n"],"names":["PufferClient","chain","walletClient","publicClient","__publicField","viemChain","VIEM_CHAINS","createWalletClient","http","createPublicClient","ERC20PermitHandler","PufferVaultHandler","PufferDepositorHandler","PufferL2DepositorHandler","PufLockerHandler","L2RewardManagerHandler","L1RewardManagerHandler","PufferWithdrawalManagerHandler","NucleusBoringVaultHandler","NucleusTellerHandler","NucleusAccountantHandler","NucleusAtomicQueueHandler","MtwCarrotHandler","CarrotStakingHandler","DistributorHandler","ConcreteVaultHandler","ValidatorTicketHandler","PufferOracleV2Handler","PufferProtocolHandler","GuardianModuleHandler","InstitutionalVaultHandler"],"mappings":"2oDAiCO,MAAMA,CAAa,CAyDxB,YACEC,EACAC,EACAC,EACA,CA5DMC,EAAA,qBACAA,EAAA,qBAIDA,EAAA,oBAEAA,EAAA,cAEAA,EAAA,kBAEAA,EAAA,oBAEAA,EAAA,kBAEAA,EAAA,wBAEAA,EAAA,wBAEAA,EAAA,gCAEAA,EAAA,2BAEAA,EAAA,sBAEAA,EAAA,0BAEAA,EAAA,2BAEAA,EAAA,kBAEAA,EAAA,qBAEAA,EAAA,oBAEAA,EAAA,sBAEAA,EAAA,wBAEAA,EAAA,uBAEAA,EAAA,uBAEAA,EAAA,uBAEAA,EAAA,2BAgBC,MAAAC,EAAYC,cAAYL,CAAK,EAG9B,KAAA,aACHC,GACAK,qBAAmB,CACjB,MAAOF,EACP,UAAWG,EAAK,KAAA,CAAA,CACjB,EACE,KAAA,aACHL,GACAM,qBAAmB,CACjB,MAAOJ,EACP,UAAWG,EAAK,KAAA,CAAA,CACjB,EAEH,KAAK,YAAc,IAAIE,EAAA,mBACrBT,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,MAAQ,IAAIU,EAAA,mBACfV,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,UAAY,IAAIW,EAAA,uBACnBX,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,YAAc,IAAIY,EAAA,yBACrBZ,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,UAAY,IAAIa,EAAA,iBACnBb,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,gBAAkB,IAAIc,EAAA,uBACzBd,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,gBAAkB,IAAIe,EAAA,uBACzBf,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,wBAA0B,IAAIgB,EAAA,+BACjChB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,mBAAqB,IAAIiB,EAAA,0BAC5BjB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,cAAgB,IAAIkB,EAAA,qBACvBlB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,kBAAoB,IAAImB,EAAA,yBAC3BnB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,mBAAqB,IAAIoB,EAAA,0BAC5BpB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,UAAY,IAAIqB,EAAA,iBACnBrB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,aAAe,IAAIsB,EAAA,qBACtBtB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,YAAc,IAAIuB,EAAA,mBACrBvB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,cAAgB,IAAIwB,EAAA,qBACvBxB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,gBAAkB,IAAIyB,EAAA,uBACzBzB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,eAAiB,IAAI0B,EAAA,sBACxB1B,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,eAAiB,IAAI2B,EAAA,sBACxB3B,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,eAAiB,IAAI4B,EAAA,sBACxB5B,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,mBAAqB,IAAI6B,EAAA,0BAC5B7B,EACA,KAAK,aACL,KAAK,YACP,CAAA,CAQF,MAAa,kBAAmB,CACvB,OAAA,MAAM,KAAK,aAAa,iBAAiB,CAAA,CAEpD"}
|
|
1
|
+
{"version":3,"file":"puffer-client.cjs","sources":["../../lib/api/puffer-client.ts"],"sourcesContent":["import {\n PublicClient,\n WalletClient,\n createPublicClient,\n createWalletClient,\n http,\n} from 'viem';\nimport { Chain, VIEM_CHAINS } from '../chains/constants';\nimport { PufferVaultHandler } from '../contracts/handlers/puffer-vault-handler';\nimport { PufferDepositorHandler } from '../contracts/handlers/puffer-depositor-handler';\nimport { PufferL2DepositorHandler } from '../contracts/handlers/puffer-l2-depositor-handler';\nimport { ERC20PermitHandler } from '../contracts/handlers/erc20-permit-handler';\nimport { PufLockerHandler } from '../contracts/handlers/puf-locker-handler';\nimport { L2RewardManagerHandler } from '../contracts/handlers/l2-reward-manager-handler';\nimport { L1RewardManagerHandler } from '../contracts/handlers/l1-reward-manager-handler';\nimport { PufferWithdrawalManagerHandler } from '../contracts/handlers/puffer-withdrawal-manager-handler';\nimport { NucleusBoringVaultHandler } from '../contracts/handlers/nucleus-boring-vault-handler';\nimport { NucleusTellerHandler } from '../contracts/handlers/nucleus-teller-handler';\nimport { NucleusAccountantHandler } from '../contracts/handlers/nucleus-accountant-handler';\nimport { NucleusAtomicQueueHandler } from '../contracts/handlers/nucleus-atomic-queue-handler';\nimport { MtwCarrotHandler } from '../contracts/handlers/mtw-carrot-handler';\nimport { CarrotStakingHandler } from '../contracts/handlers/carrot-staking-handler';\nimport { DistributorHandler } from '../contracts/handlers/distributor-handler';\nimport { ConcreteVaultHandler } from '../contracts/handlers/concrete-vault-handler';\nimport { ValidatorTicketHandler } from '../contracts/handlers/validator-ticket-handler';\nimport { PufferOracleV2Handler } from '../contracts/handlers/puffer-oracle-v2-handler';\nimport { PufferProtocolHandler } from '../contracts/handlers/puffer-protocol-handler';\nimport { GuardianModuleHandler } from '../contracts/handlers/guardian-module-handler';\nimport { InstitutionalVaultHandler } from '../contracts/handlers/institutional-vault-handler';\nimport { InstitutionalAccessManagerHandler } from '../contracts/handlers/institutional-access-manager-handler';\n\n/**\n * The core class and the main entry point of the Puffer SDK.\n */\nexport class PufferClient {\n private walletClient: WalletClient;\n private publicClient: PublicClient;\n\n // Contract Handlers\n /** Handler for the `ERC20Permit` contract. */\n public erc20Permit: ERC20PermitHandler;\n /** Handler for the `PufferVaultV2` contract. */\n public vault: PufferVaultHandler;\n /** Handler for the `PufferDepositor` contract. */\n public depositor: PufferDepositorHandler;\n /** Handler for the `PufferL2Depositor` contract. */\n public l2Depositor: PufferL2DepositorHandler;\n /** Handler for the `PufLocker` contract. */\n public pufLocker: PufLockerHandler;\n /** Handler for the `L2RewardManager` contract. */\n public l2RewardManager: L2RewardManagerHandler;\n /** Handler for the `L1RewardManager` contract. */\n public l1RewardManager: L1RewardManagerHandler;\n /** Handler for the `PufferWithdrawalManager` contract. */\n public pufferWithdrawalManager: PufferWithdrawalManagerHandler;\n /** Handler for the `NucleusBoringVault` contract. */\n public nucleusBoringVault: NucleusBoringVaultHandler;\n /** Handler for the `NucleusTeller` contract. */\n public nucleusTeller: NucleusTellerHandler;\n /** Handler for the `NucleusAccountant` contract. */\n public nucleusAccountant: NucleusAccountantHandler;\n /** Handler for the `NucleusAtomicQueue` contract. */\n public nucleusAtomicQueue: NucleusAtomicQueueHandler;\n /** Handler for the `mtwCARROT` (Merkl Token Wrapper) contract. */\n public mtwCarrot: MtwCarrotHandler;\n /** Handler for the `CarrotStaker` contract. */\n public carrotStaker: CarrotStakingHandler;\n /** Handler for the `Distributor` contract. */\n public distributor: DistributorHandler;\n /** Handler for the `ConcreteMultiStrategyVault` contract. */\n public concreteVault: ConcreteVaultHandler;\n /** Handler for the `ValidatorTicket` contract. */\n public validatorTicket: ValidatorTicketHandler;\n /** Handler for the `PufferOracleV2` contract. */\n public pufferOracleV2: PufferOracleV2Handler;\n /** Handler for the `PufferProtocol` contract. */\n public pufferProtocol: PufferProtocolHandler;\n /** Handler for the `GuardianModule` contract. */\n public guardianModule: GuardianModuleHandler;\n /** Handler for the `InstitutionalVault` contract. */\n public institutionalVault: InstitutionalVaultHandler;\n /** Handler for the `InstitutionalAccessManager` contract. */\n public institutionalAccessManager: InstitutionalAccessManagerHandler;\n\n /**\n * Create the Puffer Client.\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 chain: Chain,\n walletClient?: WalletClient,\n publicClient?: PublicClient,\n ) {\n const viemChain = VIEM_CHAINS[chain];\n\n /* istanbul ignore next */\n this.walletClient =\n walletClient ??\n createWalletClient({\n chain: viemChain,\n transport: http(),\n });\n this.publicClient =\n publicClient ??\n createPublicClient({\n chain: viemChain,\n transport: http(),\n });\n\n this.erc20Permit = new ERC20PermitHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.vault = new PufferVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.depositor = new PufferDepositorHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.l2Depositor = new PufferL2DepositorHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufLocker = new PufLockerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.l2RewardManager = new L2RewardManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.l1RewardManager = new L1RewardManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufferWithdrawalManager = new PufferWithdrawalManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusBoringVault = new NucleusBoringVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusTeller = new NucleusTellerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusAccountant = new NucleusAccountantHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusAtomicQueue = new NucleusAtomicQueueHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.mtwCarrot = new MtwCarrotHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.carrotStaker = new CarrotStakingHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.distributor = new DistributorHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.concreteVault = new ConcreteVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.validatorTicket = new ValidatorTicketHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufferOracleV2 = new PufferOracleV2Handler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufferProtocol = new PufferProtocolHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.guardianModule = new GuardianModuleHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.institutionalVault = new InstitutionalVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.institutionalAccessManager = new InstitutionalAccessManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n }\n\n /**\n * Request addresses from the wallet.\n *\n * @returns An array of wallet addresses.\n */\n public async requestAddresses() {\n return await this.walletClient.requestAddresses();\n }\n}\n"],"names":["PufferClient","chain","walletClient","publicClient","__publicField","viemChain","VIEM_CHAINS","createWalletClient","http","createPublicClient","ERC20PermitHandler","PufferVaultHandler","PufferDepositorHandler","PufferL2DepositorHandler","PufLockerHandler","L2RewardManagerHandler","L1RewardManagerHandler","PufferWithdrawalManagerHandler","NucleusBoringVaultHandler","NucleusTellerHandler","NucleusAccountantHandler","NucleusAtomicQueueHandler","MtwCarrotHandler","CarrotStakingHandler","DistributorHandler","ConcreteVaultHandler","ValidatorTicketHandler","PufferOracleV2Handler","PufferProtocolHandler","GuardianModuleHandler","InstitutionalVaultHandler","InstitutionalAccessManagerHandler"],"mappings":"utDAkCO,MAAMA,CAAa,CA2DxB,YACEC,EACAC,EACAC,EACA,CA9DMC,EAAA,qBACAA,EAAA,qBAIDA,EAAA,oBAEAA,EAAA,cAEAA,EAAA,kBAEAA,EAAA,oBAEAA,EAAA,kBAEAA,EAAA,wBAEAA,EAAA,wBAEAA,EAAA,gCAEAA,EAAA,2BAEAA,EAAA,sBAEAA,EAAA,0BAEAA,EAAA,2BAEAA,EAAA,kBAEAA,EAAA,qBAEAA,EAAA,oBAEAA,EAAA,sBAEAA,EAAA,wBAEAA,EAAA,uBAEAA,EAAA,uBAEAA,EAAA,uBAEAA,EAAA,2BAEAA,EAAA,mCAgBC,MAAAC,EAAYC,cAAYL,CAAK,EAG9B,KAAA,aACHC,GACAK,qBAAmB,CACjB,MAAOF,EACP,UAAWG,EAAK,KAAA,CAAA,CACjB,EACE,KAAA,aACHL,GACAM,qBAAmB,CACjB,MAAOJ,EACP,UAAWG,EAAK,KAAA,CAAA,CACjB,EAEH,KAAK,YAAc,IAAIE,EAAA,mBACrBT,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,MAAQ,IAAIU,EAAA,mBACfV,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,UAAY,IAAIW,EAAA,uBACnBX,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,YAAc,IAAIY,EAAA,yBACrBZ,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,UAAY,IAAIa,EAAA,iBACnBb,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,gBAAkB,IAAIc,EAAA,uBACzBd,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,gBAAkB,IAAIe,EAAA,uBACzBf,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,wBAA0B,IAAIgB,EAAA,+BACjChB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,mBAAqB,IAAIiB,EAAA,0BAC5BjB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,cAAgB,IAAIkB,EAAA,qBACvBlB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,kBAAoB,IAAImB,EAAA,yBAC3BnB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,mBAAqB,IAAIoB,EAAA,0BAC5BpB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,UAAY,IAAIqB,EAAA,iBACnBrB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,aAAe,IAAIsB,EAAA,qBACtBtB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,YAAc,IAAIuB,EAAA,mBACrBvB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,cAAgB,IAAIwB,EAAA,qBACvBxB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,gBAAkB,IAAIyB,EAAA,uBACzBzB,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,eAAiB,IAAI0B,EAAA,sBACxB1B,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,eAAiB,IAAI2B,EAAA,sBACxB3B,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,eAAiB,IAAI4B,EAAA,sBACxB5B,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,mBAAqB,IAAI6B,EAAA,0BAC5B7B,EACA,KAAK,aACL,KAAK,YACP,EACA,KAAK,2BAA6B,IAAI8B,EAAA,kCACpC9B,EACA,KAAK,aACL,KAAK,YACP,CAAA,CAQF,MAAa,kBAAmB,CACvB,OAAA,MAAM,KAAK,aAAa,iBAAiB,CAAA,CAEpD"}
|
|
@@ -21,6 +21,7 @@ import { PufferOracleV2Handler } from '../contracts/handlers/puffer-oracle-v2-ha
|
|
|
21
21
|
import { PufferProtocolHandler } from '../contracts/handlers/puffer-protocol-handler';
|
|
22
22
|
import { GuardianModuleHandler } from '../contracts/handlers/guardian-module-handler';
|
|
23
23
|
import { InstitutionalVaultHandler } from '../contracts/handlers/institutional-vault-handler';
|
|
24
|
+
import { InstitutionalAccessManagerHandler } from '../contracts/handlers/institutional-access-manager-handler';
|
|
24
25
|
/**
|
|
25
26
|
* The core class and the main entry point of the Puffer SDK.
|
|
26
27
|
*/
|
|
@@ -69,6 +70,8 @@ export declare class PufferClient {
|
|
|
69
70
|
guardianModule: GuardianModuleHandler;
|
|
70
71
|
/** Handler for the `InstitutionalVault` contract. */
|
|
71
72
|
institutionalVault: InstitutionalVaultHandler;
|
|
73
|
+
/** Handler for the `InstitutionalAccessManager` contract. */
|
|
74
|
+
institutionalAccessManager: InstitutionalAccessManagerHandler;
|
|
72
75
|
/**
|
|
73
76
|
* Create the Puffer Client.
|
|
74
77
|
*
|
|
@@ -1,30 +1,31 @@
|
|
|
1
1
|
var s = Object.defineProperty;
|
|
2
2
|
var o = (l, t, i) => t in l ? s(l, t, { enumerable: !0, configurable: !0, writable: !0, value: i }) : l[t] = i;
|
|
3
3
|
var e = (l, t, i) => o(l, typeof t != "symbol" ? t + "" : t, i);
|
|
4
|
-
import { V as u } from "../constants-
|
|
4
|
+
import { V as u } from "../constants-BaHwPdbi.js";
|
|
5
5
|
import { PufferVaultHandler as p } from "../contracts/handlers/puffer-vault-handler.js";
|
|
6
|
-
import { PufferDepositorHandler as
|
|
7
|
-
import { PufferL2DepositorHandler as
|
|
8
|
-
import { ERC20PermitHandler as
|
|
6
|
+
import { PufferDepositorHandler as c } from "../contracts/handlers/puffer-depositor-handler.js";
|
|
7
|
+
import { PufferL2DepositorHandler as w } from "../contracts/handlers/puffer-l2-depositor-handler.js";
|
|
8
|
+
import { ERC20PermitHandler as C } from "../contracts/handlers/erc20-permit-handler.js";
|
|
9
9
|
import { PufLockerHandler as m } from "../contracts/handlers/puf-locker-handler.js";
|
|
10
10
|
import { L2RewardManagerHandler as h } from "../contracts/handlers/l2-reward-manager-handler.js";
|
|
11
11
|
import { L1RewardManagerHandler as f } from "../contracts/handlers/l1-reward-manager-handler.js";
|
|
12
12
|
import { PufferWithdrawalManagerHandler as d } from "../contracts/handlers/puffer-withdrawal-manager-handler.js";
|
|
13
13
|
import { NucleusBoringVaultHandler as b } from "../contracts/handlers/nucleus-boring-vault-handler.js";
|
|
14
14
|
import { NucleusTellerHandler as H } from "../contracts/handlers/nucleus-teller-handler.js";
|
|
15
|
-
import { NucleusAccountantHandler as
|
|
16
|
-
import { NucleusAtomicQueueHandler as
|
|
17
|
-
import { MtwCarrotHandler as
|
|
18
|
-
import { CarrotStakingHandler as
|
|
19
|
-
import { DistributorHandler as
|
|
20
|
-
import { ConcreteVaultHandler as
|
|
15
|
+
import { NucleusAccountantHandler as g } from "../contracts/handlers/nucleus-accountant-handler.js";
|
|
16
|
+
import { NucleusAtomicQueueHandler as M } from "../contracts/handlers/nucleus-atomic-queue-handler.js";
|
|
17
|
+
import { MtwCarrotHandler as V } from "../contracts/handlers/mtw-carrot-handler.js";
|
|
18
|
+
import { CarrotStakingHandler as P } from "../contracts/handlers/carrot-staking-handler.js";
|
|
19
|
+
import { DistributorHandler as A } from "../contracts/handlers/distributor-handler.js";
|
|
20
|
+
import { ConcreteVaultHandler as k } from "../contracts/handlers/concrete-vault-handler.js";
|
|
21
21
|
import { ValidatorTicketHandler as R } from "../contracts/handlers/validator-ticket-handler.js";
|
|
22
22
|
import { PufferOracleV2Handler as L } from "../contracts/handlers/puffer-oracle-v2-handler.js";
|
|
23
23
|
import { PufferProtocolHandler as T } from "../contracts/handlers/puffer-protocol-handler.js";
|
|
24
24
|
import { GuardianModuleHandler as v } from "../contracts/handlers/guardian-module-handler.js";
|
|
25
25
|
import { InstitutionalVaultHandler as D } from "../contracts/handlers/institutional-vault-handler.js";
|
|
26
|
-
import {
|
|
27
|
-
|
|
26
|
+
import { InstitutionalAccessManagerHandler as N } from "../contracts/handlers/institutional-access-manager-handler.js";
|
|
27
|
+
import { c as I, h as n, a as S } from "../createWalletClient-D74YRepQ.js";
|
|
28
|
+
class nt {
|
|
28
29
|
/**
|
|
29
30
|
* Create the Puffer Client.
|
|
30
31
|
*
|
|
@@ -80,14 +81,16 @@ class it {
|
|
|
80
81
|
e(this, "guardianModule");
|
|
81
82
|
/** Handler for the `InstitutionalVault` contract. */
|
|
82
83
|
e(this, "institutionalVault");
|
|
84
|
+
/** Handler for the `InstitutionalAccessManager` contract. */
|
|
85
|
+
e(this, "institutionalAccessManager");
|
|
83
86
|
const r = u[t];
|
|
84
|
-
this.walletClient = i ??
|
|
87
|
+
this.walletClient = i ?? I({
|
|
85
88
|
chain: r,
|
|
86
89
|
transport: n()
|
|
87
90
|
}), this.publicClient = a ?? S({
|
|
88
91
|
chain: r,
|
|
89
92
|
transport: n()
|
|
90
|
-
}), this.erc20Permit = new
|
|
93
|
+
}), this.erc20Permit = new C(
|
|
91
94
|
t,
|
|
92
95
|
this.walletClient,
|
|
93
96
|
this.publicClient
|
|
@@ -95,11 +98,11 @@ class it {
|
|
|
95
98
|
t,
|
|
96
99
|
this.walletClient,
|
|
97
100
|
this.publicClient
|
|
98
|
-
), this.depositor = new
|
|
101
|
+
), this.depositor = new c(
|
|
99
102
|
t,
|
|
100
103
|
this.walletClient,
|
|
101
104
|
this.publicClient
|
|
102
|
-
), this.l2Depositor = new
|
|
105
|
+
), this.l2Depositor = new w(
|
|
103
106
|
t,
|
|
104
107
|
this.walletClient,
|
|
105
108
|
this.publicClient
|
|
@@ -127,27 +130,27 @@ class it {
|
|
|
127
130
|
t,
|
|
128
131
|
this.walletClient,
|
|
129
132
|
this.publicClient
|
|
130
|
-
), this.nucleusAccountant = new
|
|
133
|
+
), this.nucleusAccountant = new g(
|
|
131
134
|
t,
|
|
132
135
|
this.walletClient,
|
|
133
136
|
this.publicClient
|
|
134
|
-
), this.nucleusAtomicQueue = new
|
|
137
|
+
), this.nucleusAtomicQueue = new M(
|
|
135
138
|
t,
|
|
136
139
|
this.walletClient,
|
|
137
140
|
this.publicClient
|
|
138
|
-
), this.mtwCarrot = new
|
|
141
|
+
), this.mtwCarrot = new V(
|
|
139
142
|
t,
|
|
140
143
|
this.walletClient,
|
|
141
144
|
this.publicClient
|
|
142
|
-
), this.carrotStaker = new
|
|
145
|
+
), this.carrotStaker = new P(
|
|
143
146
|
t,
|
|
144
147
|
this.walletClient,
|
|
145
148
|
this.publicClient
|
|
146
|
-
), this.distributor = new
|
|
149
|
+
), this.distributor = new A(
|
|
147
150
|
t,
|
|
148
151
|
this.walletClient,
|
|
149
152
|
this.publicClient
|
|
150
|
-
), this.concreteVault = new
|
|
153
|
+
), this.concreteVault = new k(
|
|
151
154
|
t,
|
|
152
155
|
this.walletClient,
|
|
153
156
|
this.publicClient
|
|
@@ -171,6 +174,10 @@ class it {
|
|
|
171
174
|
t,
|
|
172
175
|
this.walletClient,
|
|
173
176
|
this.publicClient
|
|
177
|
+
), this.institutionalAccessManager = new N(
|
|
178
|
+
t,
|
|
179
|
+
this.walletClient,
|
|
180
|
+
this.publicClient
|
|
174
181
|
);
|
|
175
182
|
}
|
|
176
183
|
/**
|
|
@@ -183,6 +190,6 @@ class it {
|
|
|
183
190
|
}
|
|
184
191
|
}
|
|
185
192
|
export {
|
|
186
|
-
|
|
193
|
+
nt as PufferClient
|
|
187
194
|
};
|
|
188
195
|
//# sourceMappingURL=puffer-client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"puffer-client.js","sources":["../../lib/api/puffer-client.ts"],"sourcesContent":["import {\n PublicClient,\n WalletClient,\n createPublicClient,\n createWalletClient,\n http,\n} from 'viem';\nimport { Chain, VIEM_CHAINS } from '../chains/constants';\nimport { PufferVaultHandler } from '../contracts/handlers/puffer-vault-handler';\nimport { PufferDepositorHandler } from '../contracts/handlers/puffer-depositor-handler';\nimport { PufferL2DepositorHandler } from '../contracts/handlers/puffer-l2-depositor-handler';\nimport { ERC20PermitHandler } from '../contracts/handlers/erc20-permit-handler';\nimport { PufLockerHandler } from '../contracts/handlers/puf-locker-handler';\nimport { L2RewardManagerHandler } from '../contracts/handlers/l2-reward-manager-handler';\nimport { L1RewardManagerHandler } from '../contracts/handlers/l1-reward-manager-handler';\nimport { PufferWithdrawalManagerHandler } from '../contracts/handlers/puffer-withdrawal-manager-handler';\nimport { NucleusBoringVaultHandler } from '../contracts/handlers/nucleus-boring-vault-handler';\nimport { NucleusTellerHandler } from '../contracts/handlers/nucleus-teller-handler';\nimport { NucleusAccountantHandler } from '../contracts/handlers/nucleus-accountant-handler';\nimport { NucleusAtomicQueueHandler } from '../contracts/handlers/nucleus-atomic-queue-handler';\nimport { MtwCarrotHandler } from '../contracts/handlers/mtw-carrot-handler';\nimport { CarrotStakingHandler } from '../contracts/handlers/carrot-staking-handler';\nimport { DistributorHandler } from '../contracts/handlers/distributor-handler';\nimport { ConcreteVaultHandler } from '../contracts/handlers/concrete-vault-handler';\nimport { ValidatorTicketHandler } from '../contracts/handlers/validator-ticket-handler';\nimport { PufferOracleV2Handler } from '../contracts/handlers/puffer-oracle-v2-handler';\nimport { PufferProtocolHandler } from '../contracts/handlers/puffer-protocol-handler';\nimport { GuardianModuleHandler } from '../contracts/handlers/guardian-module-handler';\nimport { InstitutionalVaultHandler } from '../contracts/handlers/institutional-vault-handler';\n\n/**\n * The core class and the main entry point of the Puffer SDK.\n */\nexport class PufferClient {\n private walletClient: WalletClient;\n private publicClient: PublicClient;\n\n // Contract Handlers\n /** Handler for the `ERC20Permit` contract. */\n public erc20Permit: ERC20PermitHandler;\n /** Handler for the `PufferVaultV2` contract. */\n public vault: PufferVaultHandler;\n /** Handler for the `PufferDepositor` contract. */\n public depositor: PufferDepositorHandler;\n /** Handler for the `PufferL2Depositor` contract. */\n public l2Depositor: PufferL2DepositorHandler;\n /** Handler for the `PufLocker` contract. */\n public pufLocker: PufLockerHandler;\n /** Handler for the `L2RewardManager` contract. */\n public l2RewardManager: L2RewardManagerHandler;\n /** Handler for the `L1RewardManager` contract. */\n public l1RewardManager: L1RewardManagerHandler;\n /** Handler for the `PufferWithdrawalManager` contract. */\n public pufferWithdrawalManager: PufferWithdrawalManagerHandler;\n /** Handler for the `NucleusBoringVault` contract. */\n public nucleusBoringVault: NucleusBoringVaultHandler;\n /** Handler for the `NucleusTeller` contract. */\n public nucleusTeller: NucleusTellerHandler;\n /** Handler for the `NucleusAccountant` contract. */\n public nucleusAccountant: NucleusAccountantHandler;\n /** Handler for the `NucleusAtomicQueue` contract. */\n public nucleusAtomicQueue: NucleusAtomicQueueHandler;\n /** Handler for the `mtwCARROT` (Merkl Token Wrapper) contract. */\n public mtwCarrot: MtwCarrotHandler;\n /** Handler for the `CarrotStaker` contract. */\n public carrotStaker: CarrotStakingHandler;\n /** Handler for the `Distributor` contract. */\n public distributor: DistributorHandler;\n /** Handler for the `ConcreteMultiStrategyVault` contract. */\n public concreteVault: ConcreteVaultHandler;\n /** Handler for the `ValidatorTicket` contract. */\n public validatorTicket: ValidatorTicketHandler;\n /** Handler for the `PufferOracleV2` contract. */\n public pufferOracleV2: PufferOracleV2Handler;\n /** Handler for the `PufferProtocol` contract. */\n public pufferProtocol: PufferProtocolHandler;\n /** Handler for the `GuardianModule` contract. */\n public guardianModule: GuardianModuleHandler;\n /** Handler for the `InstitutionalVault` contract. */\n public institutionalVault: InstitutionalVaultHandler;\n\n /**\n * Create the Puffer Client.\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 chain: Chain,\n walletClient?: WalletClient,\n publicClient?: PublicClient,\n ) {\n const viemChain = VIEM_CHAINS[chain];\n\n /* istanbul ignore next */\n this.walletClient =\n walletClient ??\n createWalletClient({\n chain: viemChain,\n transport: http(),\n });\n this.publicClient =\n publicClient ??\n createPublicClient({\n chain: viemChain,\n transport: http(),\n });\n\n this.erc20Permit = new ERC20PermitHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.vault = new PufferVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.depositor = new PufferDepositorHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.l2Depositor = new PufferL2DepositorHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufLocker = new PufLockerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.l2RewardManager = new L2RewardManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.l1RewardManager = new L1RewardManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufferWithdrawalManager = new PufferWithdrawalManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusBoringVault = new NucleusBoringVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusTeller = new NucleusTellerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusAccountant = new NucleusAccountantHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusAtomicQueue = new NucleusAtomicQueueHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.mtwCarrot = new MtwCarrotHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.carrotStaker = new CarrotStakingHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.distributor = new DistributorHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.concreteVault = new ConcreteVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.validatorTicket = new ValidatorTicketHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufferOracleV2 = new PufferOracleV2Handler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufferProtocol = new PufferProtocolHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.guardianModule = new GuardianModuleHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.institutionalVault = new InstitutionalVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n }\n\n /**\n * Request addresses from the wallet.\n *\n * @returns An array of wallet addresses.\n */\n public async requestAddresses() {\n return await this.walletClient.requestAddresses();\n }\n}\n"],"names":["PufferClient","chain","walletClient","publicClient","__publicField","viemChain","VIEM_CHAINS","createWalletClient","http","createPublicClient","ERC20PermitHandler","PufferVaultHandler","PufferDepositorHandler","PufferL2DepositorHandler","PufLockerHandler","L2RewardManagerHandler","L1RewardManagerHandler","PufferWithdrawalManagerHandler","NucleusBoringVaultHandler","NucleusTellerHandler","NucleusAccountantHandler","NucleusAtomicQueueHandler","MtwCarrotHandler","CarrotStakingHandler","DistributorHandler","ConcreteVaultHandler","ValidatorTicketHandler","PufferOracleV2Handler","PufferProtocolHandler","GuardianModuleHandler","InstitutionalVaultHandler"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"puffer-client.js","sources":["../../lib/api/puffer-client.ts"],"sourcesContent":["import {\n PublicClient,\n WalletClient,\n createPublicClient,\n createWalletClient,\n http,\n} from 'viem';\nimport { Chain, VIEM_CHAINS } from '../chains/constants';\nimport { PufferVaultHandler } from '../contracts/handlers/puffer-vault-handler';\nimport { PufferDepositorHandler } from '../contracts/handlers/puffer-depositor-handler';\nimport { PufferL2DepositorHandler } from '../contracts/handlers/puffer-l2-depositor-handler';\nimport { ERC20PermitHandler } from '../contracts/handlers/erc20-permit-handler';\nimport { PufLockerHandler } from '../contracts/handlers/puf-locker-handler';\nimport { L2RewardManagerHandler } from '../contracts/handlers/l2-reward-manager-handler';\nimport { L1RewardManagerHandler } from '../contracts/handlers/l1-reward-manager-handler';\nimport { PufferWithdrawalManagerHandler } from '../contracts/handlers/puffer-withdrawal-manager-handler';\nimport { NucleusBoringVaultHandler } from '../contracts/handlers/nucleus-boring-vault-handler';\nimport { NucleusTellerHandler } from '../contracts/handlers/nucleus-teller-handler';\nimport { NucleusAccountantHandler } from '../contracts/handlers/nucleus-accountant-handler';\nimport { NucleusAtomicQueueHandler } from '../contracts/handlers/nucleus-atomic-queue-handler';\nimport { MtwCarrotHandler } from '../contracts/handlers/mtw-carrot-handler';\nimport { CarrotStakingHandler } from '../contracts/handlers/carrot-staking-handler';\nimport { DistributorHandler } from '../contracts/handlers/distributor-handler';\nimport { ConcreteVaultHandler } from '../contracts/handlers/concrete-vault-handler';\nimport { ValidatorTicketHandler } from '../contracts/handlers/validator-ticket-handler';\nimport { PufferOracleV2Handler } from '../contracts/handlers/puffer-oracle-v2-handler';\nimport { PufferProtocolHandler } from '../contracts/handlers/puffer-protocol-handler';\nimport { GuardianModuleHandler } from '../contracts/handlers/guardian-module-handler';\nimport { InstitutionalVaultHandler } from '../contracts/handlers/institutional-vault-handler';\nimport { InstitutionalAccessManagerHandler } from '../contracts/handlers/institutional-access-manager-handler';\n\n/**\n * The core class and the main entry point of the Puffer SDK.\n */\nexport class PufferClient {\n private walletClient: WalletClient;\n private publicClient: PublicClient;\n\n // Contract Handlers\n /** Handler for the `ERC20Permit` contract. */\n public erc20Permit: ERC20PermitHandler;\n /** Handler for the `PufferVaultV2` contract. */\n public vault: PufferVaultHandler;\n /** Handler for the `PufferDepositor` contract. */\n public depositor: PufferDepositorHandler;\n /** Handler for the `PufferL2Depositor` contract. */\n public l2Depositor: PufferL2DepositorHandler;\n /** Handler for the `PufLocker` contract. */\n public pufLocker: PufLockerHandler;\n /** Handler for the `L2RewardManager` contract. */\n public l2RewardManager: L2RewardManagerHandler;\n /** Handler for the `L1RewardManager` contract. */\n public l1RewardManager: L1RewardManagerHandler;\n /** Handler for the `PufferWithdrawalManager` contract. */\n public pufferWithdrawalManager: PufferWithdrawalManagerHandler;\n /** Handler for the `NucleusBoringVault` contract. */\n public nucleusBoringVault: NucleusBoringVaultHandler;\n /** Handler for the `NucleusTeller` contract. */\n public nucleusTeller: NucleusTellerHandler;\n /** Handler for the `NucleusAccountant` contract. */\n public nucleusAccountant: NucleusAccountantHandler;\n /** Handler for the `NucleusAtomicQueue` contract. */\n public nucleusAtomicQueue: NucleusAtomicQueueHandler;\n /** Handler for the `mtwCARROT` (Merkl Token Wrapper) contract. */\n public mtwCarrot: MtwCarrotHandler;\n /** Handler for the `CarrotStaker` contract. */\n public carrotStaker: CarrotStakingHandler;\n /** Handler for the `Distributor` contract. */\n public distributor: DistributorHandler;\n /** Handler for the `ConcreteMultiStrategyVault` contract. */\n public concreteVault: ConcreteVaultHandler;\n /** Handler for the `ValidatorTicket` contract. */\n public validatorTicket: ValidatorTicketHandler;\n /** Handler for the `PufferOracleV2` contract. */\n public pufferOracleV2: PufferOracleV2Handler;\n /** Handler for the `PufferProtocol` contract. */\n public pufferProtocol: PufferProtocolHandler;\n /** Handler for the `GuardianModule` contract. */\n public guardianModule: GuardianModuleHandler;\n /** Handler for the `InstitutionalVault` contract. */\n public institutionalVault: InstitutionalVaultHandler;\n /** Handler for the `InstitutionalAccessManager` contract. */\n public institutionalAccessManager: InstitutionalAccessManagerHandler;\n\n /**\n * Create the Puffer Client.\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 chain: Chain,\n walletClient?: WalletClient,\n publicClient?: PublicClient,\n ) {\n const viemChain = VIEM_CHAINS[chain];\n\n /* istanbul ignore next */\n this.walletClient =\n walletClient ??\n createWalletClient({\n chain: viemChain,\n transport: http(),\n });\n this.publicClient =\n publicClient ??\n createPublicClient({\n chain: viemChain,\n transport: http(),\n });\n\n this.erc20Permit = new ERC20PermitHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.vault = new PufferVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.depositor = new PufferDepositorHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.l2Depositor = new PufferL2DepositorHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufLocker = new PufLockerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.l2RewardManager = new L2RewardManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.l1RewardManager = new L1RewardManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufferWithdrawalManager = new PufferWithdrawalManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusBoringVault = new NucleusBoringVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusTeller = new NucleusTellerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusAccountant = new NucleusAccountantHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.nucleusAtomicQueue = new NucleusAtomicQueueHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.mtwCarrot = new MtwCarrotHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.carrotStaker = new CarrotStakingHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.distributor = new DistributorHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.concreteVault = new ConcreteVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.validatorTicket = new ValidatorTicketHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufferOracleV2 = new PufferOracleV2Handler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.pufferProtocol = new PufferProtocolHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.guardianModule = new GuardianModuleHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.institutionalVault = new InstitutionalVaultHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n this.institutionalAccessManager = new InstitutionalAccessManagerHandler(\n chain,\n this.walletClient,\n this.publicClient,\n );\n }\n\n /**\n * Request addresses from the wallet.\n *\n * @returns An array of wallet addresses.\n */\n public async requestAddresses() {\n return await this.walletClient.requestAddresses();\n }\n}\n"],"names":["PufferClient","chain","walletClient","publicClient","__publicField","viemChain","VIEM_CHAINS","createWalletClient","http","createPublicClient","ERC20PermitHandler","PufferVaultHandler","PufferDepositorHandler","PufferL2DepositorHandler","PufLockerHandler","L2RewardManagerHandler","L1RewardManagerHandler","PufferWithdrawalManagerHandler","NucleusBoringVaultHandler","NucleusTellerHandler","NucleusAccountantHandler","NucleusAtomicQueueHandler","MtwCarrotHandler","CarrotStakingHandler","DistributorHandler","ConcreteVaultHandler","ValidatorTicketHandler","PufferOracleV2Handler","PufferProtocolHandler","GuardianModuleHandler","InstitutionalVaultHandler","InstitutionalAccessManagerHandler"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { B as l, c as E, i as x } from "./constants-
|
|
1
|
+
import { f as m, h as y, i as k, j as b, k as L, l as O, H as h } from "./writeContract-BU3yK-Xj.js";
|
|
2
|
+
import { B as l, c as E, i as x } from "./constants-BaHwPdbi.js";
|
|
3
3
|
class M extends l {
|
|
4
|
-
constructor({ callbackSelector: r, cause: a, data: o, extraData: i, sender:
|
|
4
|
+
constructor({ callbackSelector: r, cause: a, data: o, extraData: i, sender: f, urls: t }) {
|
|
5
5
|
var n;
|
|
6
6
|
super(a.shortMessage || "An error occurred while fetching for an offchain result.", {
|
|
7
7
|
cause: a,
|
|
@@ -11,9 +11,9 @@ class M extends l {
|
|
|
11
11
|
"Offchain Gateway Call:",
|
|
12
12
|
t && [
|
|
13
13
|
" Gateway URL(s):",
|
|
14
|
-
...t.map((
|
|
14
|
+
...t.map((d) => ` ${m(d)}`)
|
|
15
15
|
],
|
|
16
|
-
` Sender: ${
|
|
16
|
+
` Sender: ${f}`,
|
|
17
17
|
` Data: ${o}`,
|
|
18
18
|
` Callback selector: ${r}`,
|
|
19
19
|
` Extra data: ${i}`
|
|
@@ -71,14 +71,14 @@ const A = "0x556f1830", $ = {
|
|
|
71
71
|
]
|
|
72
72
|
};
|
|
73
73
|
async function D(c, { blockNumber: r, blockTag: a, data: o, to: i }) {
|
|
74
|
-
const { args:
|
|
74
|
+
const { args: f } = k({
|
|
75
75
|
data: o,
|
|
76
76
|
abi: [$]
|
|
77
|
-
}), [t, n,
|
|
77
|
+
}), [t, n, d, p, s] = f, { ccipRead: e } = c, w = e && typeof (e == null ? void 0 : e.request) == "function" ? e.request : T;
|
|
78
78
|
try {
|
|
79
79
|
if (!b(i, t))
|
|
80
80
|
throw new S({ sender: t, to: i });
|
|
81
|
-
const u = await w({ data:
|
|
81
|
+
const u = await w({ data: d, sender: t, urls: n }), { data: g } = await L(c, {
|
|
82
82
|
blockNumber: r,
|
|
83
83
|
blockTag: a,
|
|
84
84
|
data: E([
|
|
@@ -102,18 +102,18 @@ async function D(c, { blockNumber: r, blockTag: a, data: o, to: i }) {
|
|
|
102
102
|
async function T({ data: c, sender: r, urls: a }) {
|
|
103
103
|
var i;
|
|
104
104
|
let o = new Error("An unknown error occurred.");
|
|
105
|
-
for (let
|
|
106
|
-
const t = a[
|
|
105
|
+
for (let f = 0; f < a.length; f++) {
|
|
106
|
+
const t = a[f], n = t.includes("{data}") ? "GET" : "POST", d = n === "POST" ? { data: c, sender: r } : void 0, p = n === "POST" ? { "Content-Type": "application/json" } : {};
|
|
107
107
|
try {
|
|
108
108
|
const s = await fetch(t.replace("{sender}", r.toLowerCase()).replace("{data}", c), {
|
|
109
|
-
body: JSON.stringify(
|
|
109
|
+
body: JSON.stringify(d),
|
|
110
110
|
headers: p,
|
|
111
111
|
method: n
|
|
112
112
|
});
|
|
113
113
|
let e;
|
|
114
114
|
if ((i = s.headers.get("Content-Type")) != null && i.startsWith("application/json") ? e = (await s.json()).data : e = await s.text(), !s.ok) {
|
|
115
115
|
o = new h({
|
|
116
|
-
body:
|
|
116
|
+
body: d,
|
|
117
117
|
details: e != null && e.error ? y(e.error) : s.statusText,
|
|
118
118
|
headers: s.headers,
|
|
119
119
|
status: s.status,
|
|
@@ -131,7 +131,7 @@ async function T({ data: c, sender: r, urls: a }) {
|
|
|
131
131
|
return e;
|
|
132
132
|
} catch (s) {
|
|
133
133
|
o = new h({
|
|
134
|
-
body:
|
|
134
|
+
body: d,
|
|
135
135
|
details: s.message,
|
|
136
136
|
url: t
|
|
137
137
|
});
|
|
@@ -145,4 +145,4 @@ export {
|
|
|
145
145
|
$ as offchainLookupAbiItem,
|
|
146
146
|
A as offchainLookupSignature
|
|
147
147
|
};
|
|
148
|
-
//# sourceMappingURL=ccip-
|
|
148
|
+
//# sourceMappingURL=ccip-CiQCCFUl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ccip-ChHXXL5d.js","sources":["../node_modules/.pnpm/viem@2.23.13_typescript@5.8.2_zod@3.24.2/node_modules/viem/_esm/errors/ccip.js","../node_modules/.pnpm/viem@2.23.13_typescript@5.8.2_zod@3.24.2/node_modules/viem/_esm/utils/ccip.js"],"sourcesContent":["import { stringify } from '../utils/stringify.js';\nimport { BaseError } from './base.js';\nimport { getUrl } from './utils.js';\nexport class OffchainLookupError extends BaseError {\n constructor({ callbackSelector, cause, data, extraData, sender, urls, }) {\n super(cause.shortMessage ||\n 'An error occurred while fetching for an offchain result.', {\n cause,\n metaMessages: [\n ...(cause.metaMessages || []),\n cause.metaMessages?.length ? '' : [],\n 'Offchain Gateway Call:',\n urls && [\n ' Gateway URL(s):',\n ...urls.map((url) => ` ${getUrl(url)}`),\n ],\n ` Sender: ${sender}`,\n ` Data: ${data}`,\n ` Callback selector: ${callbackSelector}`,\n ` Extra data: ${extraData}`,\n ].flat(),\n name: 'OffchainLookupError',\n });\n }\n}\nexport class OffchainLookupResponseMalformedError extends BaseError {\n constructor({ result, url }) {\n super('Offchain gateway response is malformed. Response data must be a hex value.', {\n metaMessages: [\n `Gateway URL: ${getUrl(url)}`,\n `Response: ${stringify(result)}`,\n ],\n name: 'OffchainLookupResponseMalformedError',\n });\n }\n}\nexport class OffchainLookupSenderMismatchError extends BaseError {\n constructor({ sender, to }) {\n super('Reverted sender address does not match target contract address (`to`).', {\n metaMessages: [\n `Contract address: ${to}`,\n `OffchainLookup sender address: ${sender}`,\n ],\n name: 'OffchainLookupSenderMismatchError',\n });\n }\n}\n//# sourceMappingURL=ccip.js.map","import { call } from '../actions/public/call.js';\nimport { OffchainLookupError, OffchainLookupResponseMalformedError, OffchainLookupSenderMismatchError, } from '../errors/ccip.js';\nimport { HttpRequestError, } from '../errors/request.js';\nimport { decodeErrorResult } from './abi/decodeErrorResult.js';\nimport { encodeAbiParameters } from './abi/encodeAbiParameters.js';\nimport { isAddressEqual } from './address/isAddressEqual.js';\nimport { concat } from './data/concat.js';\nimport { isHex } from './data/isHex.js';\nimport { stringify } from './stringify.js';\nexport const offchainLookupSignature = '0x556f1830';\nexport const offchainLookupAbiItem = {\n name: 'OffchainLookup',\n type: 'error',\n inputs: [\n {\n name: 'sender',\n type: 'address',\n },\n {\n name: 'urls',\n type: 'string[]',\n },\n {\n name: 'callData',\n type: 'bytes',\n },\n {\n name: 'callbackFunction',\n type: 'bytes4',\n },\n {\n name: 'extraData',\n type: 'bytes',\n },\n ],\n};\nexport async function offchainLookup(client, { blockNumber, blockTag, data, to, }) {\n const { args } = decodeErrorResult({\n data,\n abi: [offchainLookupAbiItem],\n });\n const [sender, urls, callData, callbackSelector, extraData] = args;\n const { ccipRead } = client;\n const ccipRequest_ = ccipRead && typeof ccipRead?.request === 'function'\n ? ccipRead.request\n : ccipRequest;\n try {\n if (!isAddressEqual(to, sender))\n throw new OffchainLookupSenderMismatchError({ sender, to });\n const result = await ccipRequest_({ data: callData, sender, urls });\n const { data: data_ } = await call(client, {\n blockNumber,\n blockTag,\n data: concat([\n callbackSelector,\n encodeAbiParameters([{ type: 'bytes' }, { type: 'bytes' }], [result, extraData]),\n ]),\n to,\n });\n return data_;\n }\n catch (err) {\n throw new OffchainLookupError({\n callbackSelector,\n cause: err,\n data,\n extraData,\n sender,\n urls,\n });\n }\n}\nexport async function ccipRequest({ data, sender, urls, }) {\n let error = new Error('An unknown error occurred.');\n for (let i = 0; i < urls.length; i++) {\n const url = urls[i];\n const method = url.includes('{data}') ? 'GET' : 'POST';\n const body = method === 'POST' ? { data, sender } : undefined;\n const headers = method === 'POST' ? { 'Content-Type': 'application/json' } : {};\n try {\n const response = await fetch(url.replace('{sender}', sender.toLowerCase()).replace('{data}', data), {\n body: JSON.stringify(body),\n headers,\n method,\n });\n let result;\n if (response.headers.get('Content-Type')?.startsWith('application/json')) {\n result = (await response.json()).data;\n }\n else {\n result = (await response.text());\n }\n if (!response.ok) {\n error = new HttpRequestError({\n body,\n details: result?.error\n ? stringify(result.error)\n : response.statusText,\n headers: response.headers,\n status: response.status,\n url,\n });\n continue;\n }\n if (!isHex(result)) {\n error = new OffchainLookupResponseMalformedError({\n result,\n url,\n });\n continue;\n }\n return result;\n }\n catch (err) {\n error = new HttpRequestError({\n body,\n details: err.message,\n url,\n });\n }\n }\n throw error;\n}\n//# sourceMappingURL=ccip.js.map"],"names":["OffchainLookupError","BaseError","callbackSelector","cause","data","extraData","sender","urls","_a","url","getUrl","OffchainLookupResponseMalformedError","result","stringify","OffchainLookupSenderMismatchError","to","offchainLookupSignature","offchainLookupAbiItem","offchainLookup","client","blockNumber","blockTag","args","decodeErrorResult","callData","ccipRead","ccipRequest_","ccipRequest","isAddressEqual","data_","call","concat","encodeAbiParameters","err","error","i","method","body","headers","response","HttpRequestError","isHex"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"ccip-CiQCCFUl.js","sources":["../node_modules/.pnpm/viem@2.23.13_typescript@5.8.2_zod@3.24.2/node_modules/viem/_esm/errors/ccip.js","../node_modules/.pnpm/viem@2.23.13_typescript@5.8.2_zod@3.24.2/node_modules/viem/_esm/utils/ccip.js"],"sourcesContent":["import { stringify } from '../utils/stringify.js';\nimport { BaseError } from './base.js';\nimport { getUrl } from './utils.js';\nexport class OffchainLookupError extends BaseError {\n constructor({ callbackSelector, cause, data, extraData, sender, urls, }) {\n super(cause.shortMessage ||\n 'An error occurred while fetching for an offchain result.', {\n cause,\n metaMessages: [\n ...(cause.metaMessages || []),\n cause.metaMessages?.length ? '' : [],\n 'Offchain Gateway Call:',\n urls && [\n ' Gateway URL(s):',\n ...urls.map((url) => ` ${getUrl(url)}`),\n ],\n ` Sender: ${sender}`,\n ` Data: ${data}`,\n ` Callback selector: ${callbackSelector}`,\n ` Extra data: ${extraData}`,\n ].flat(),\n name: 'OffchainLookupError',\n });\n }\n}\nexport class OffchainLookupResponseMalformedError extends BaseError {\n constructor({ result, url }) {\n super('Offchain gateway response is malformed. Response data must be a hex value.', {\n metaMessages: [\n `Gateway URL: ${getUrl(url)}`,\n `Response: ${stringify(result)}`,\n ],\n name: 'OffchainLookupResponseMalformedError',\n });\n }\n}\nexport class OffchainLookupSenderMismatchError extends BaseError {\n constructor({ sender, to }) {\n super('Reverted sender address does not match target contract address (`to`).', {\n metaMessages: [\n `Contract address: ${to}`,\n `OffchainLookup sender address: ${sender}`,\n ],\n name: 'OffchainLookupSenderMismatchError',\n });\n }\n}\n//# sourceMappingURL=ccip.js.map","import { call } from '../actions/public/call.js';\nimport { OffchainLookupError, OffchainLookupResponseMalformedError, OffchainLookupSenderMismatchError, } from '../errors/ccip.js';\nimport { HttpRequestError, } from '../errors/request.js';\nimport { decodeErrorResult } from './abi/decodeErrorResult.js';\nimport { encodeAbiParameters } from './abi/encodeAbiParameters.js';\nimport { isAddressEqual } from './address/isAddressEqual.js';\nimport { concat } from './data/concat.js';\nimport { isHex } from './data/isHex.js';\nimport { stringify } from './stringify.js';\nexport const offchainLookupSignature = '0x556f1830';\nexport const offchainLookupAbiItem = {\n name: 'OffchainLookup',\n type: 'error',\n inputs: [\n {\n name: 'sender',\n type: 'address',\n },\n {\n name: 'urls',\n type: 'string[]',\n },\n {\n name: 'callData',\n type: 'bytes',\n },\n {\n name: 'callbackFunction',\n type: 'bytes4',\n },\n {\n name: 'extraData',\n type: 'bytes',\n },\n ],\n};\nexport async function offchainLookup(client, { blockNumber, blockTag, data, to, }) {\n const { args } = decodeErrorResult({\n data,\n abi: [offchainLookupAbiItem],\n });\n const [sender, urls, callData, callbackSelector, extraData] = args;\n const { ccipRead } = client;\n const ccipRequest_ = ccipRead && typeof ccipRead?.request === 'function'\n ? ccipRead.request\n : ccipRequest;\n try {\n if (!isAddressEqual(to, sender))\n throw new OffchainLookupSenderMismatchError({ sender, to });\n const result = await ccipRequest_({ data: callData, sender, urls });\n const { data: data_ } = await call(client, {\n blockNumber,\n blockTag,\n data: concat([\n callbackSelector,\n encodeAbiParameters([{ type: 'bytes' }, { type: 'bytes' }], [result, extraData]),\n ]),\n to,\n });\n return data_;\n }\n catch (err) {\n throw new OffchainLookupError({\n callbackSelector,\n cause: err,\n data,\n extraData,\n sender,\n urls,\n });\n }\n}\nexport async function ccipRequest({ data, sender, urls, }) {\n let error = new Error('An unknown error occurred.');\n for (let i = 0; i < urls.length; i++) {\n const url = urls[i];\n const method = url.includes('{data}') ? 'GET' : 'POST';\n const body = method === 'POST' ? { data, sender } : undefined;\n const headers = method === 'POST' ? { 'Content-Type': 'application/json' } : {};\n try {\n const response = await fetch(url.replace('{sender}', sender.toLowerCase()).replace('{data}', data), {\n body: JSON.stringify(body),\n headers,\n method,\n });\n let result;\n if (response.headers.get('Content-Type')?.startsWith('application/json')) {\n result = (await response.json()).data;\n }\n else {\n result = (await response.text());\n }\n if (!response.ok) {\n error = new HttpRequestError({\n body,\n details: result?.error\n ? stringify(result.error)\n : response.statusText,\n headers: response.headers,\n status: response.status,\n url,\n });\n continue;\n }\n if (!isHex(result)) {\n error = new OffchainLookupResponseMalformedError({\n result,\n url,\n });\n continue;\n }\n return result;\n }\n catch (err) {\n error = new HttpRequestError({\n body,\n details: err.message,\n url,\n });\n }\n }\n throw error;\n}\n//# sourceMappingURL=ccip.js.map"],"names":["OffchainLookupError","BaseError","callbackSelector","cause","data","extraData","sender","urls","_a","url","getUrl","OffchainLookupResponseMalformedError","result","stringify","OffchainLookupSenderMismatchError","to","offchainLookupSignature","offchainLookupAbiItem","offchainLookup","client","blockNumber","blockTag","args","decodeErrorResult","callData","ccipRead","ccipRequest_","ccipRequest","isAddressEqual","data_","call","concat","encodeAbiParameters","err","error","i","method","body","headers","response","HttpRequestError","isHex"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./writeContract-
|
|
2
|
-
//# sourceMappingURL=ccip-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./writeContract-CKqv1dsa.cjs"),p=require("./constants-c-vATmlG.cjs");class k extends p.BaseError{constructor({callbackSelector:s,cause:t,data:n,extraData:f,sender:u,urls:a}){var c;super(t.shortMessage||"An error occurred while fetching for an offchain result.",{cause:t,metaMessages:[...t.metaMessages||[],(c=t.metaMessages)!=null&&c.length?"":[],"Offchain Gateway Call:",a&&[" Gateway URL(s):",...a.map(d=>` ${o.getUrl(d)}`)],` Sender: ${u}`,` Data: ${n}`,` Callback selector: ${s}`,` Extra data: ${f}`].flat(),name:"OffchainLookupError"})}}class b extends p.BaseError{constructor({result:s,url:t}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${o.getUrl(t)}`,`Response: ${o.stringify(s)}`],name:"OffchainLookupResponseMalformedError"})}}class L extends p.BaseError{constructor({sender:s,to:t}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${s}`],name:"OffchainLookupSenderMismatchError"})}}const E="0x556f1830",y={name:"OffchainLookup",type:"error",inputs:[{name:"sender",type:"address"},{name:"urls",type:"string[]"},{name:"callData",type:"bytes"},{name:"callbackFunction",type:"bytes4"},{name:"extraData",type:"bytes"}]};async function O(i,{blockNumber:s,blockTag:t,data:n,to:f}){const{args:u}=o.decodeErrorResult({data:n,abi:[y]}),[a,c,d,l,r]=u,{ccipRead:e}=i,g=e&&typeof(e==null?void 0:e.request)=="function"?e.request:m;try{if(!o.isAddressEqual(f,a))throw new L({sender:a,to:f});const h=await g({data:d,sender:a,urls:c}),{data:w}=await o.call(i,{blockNumber:s,blockTag:t,data:p.concat([l,o.encodeAbiParameters([{type:"bytes"},{type:"bytes"}],[h,r])]),to:f});return w}catch(h){throw new k({callbackSelector:l,cause:h,data:n,extraData:r,sender:a,urls:c})}}async function m({data:i,sender:s,urls:t}){var f;let n=new Error("An unknown error occurred.");for(let u=0;u<t.length;u++){const a=t[u],c=a.includes("{data}")?"GET":"POST",d=c==="POST"?{data:i,sender:s}:void 0,l=c==="POST"?{"Content-Type":"application/json"}:{};try{const r=await fetch(a.replace("{sender}",s.toLowerCase()).replace("{data}",i),{body:JSON.stringify(d),headers:l,method:c});let e;if((f=r.headers.get("Content-Type"))!=null&&f.startsWith("application/json")?e=(await r.json()).data:e=await r.text(),!r.ok){n=new o.HttpRequestError({body:d,details:e!=null&&e.error?o.stringify(e.error):r.statusText,headers:r.headers,status:r.status,url:a});continue}if(!p.isHex(e)){n=new b({result:e,url:a});continue}return e}catch(r){n=new o.HttpRequestError({body:d,details:r.message,url:a})}}throw n}exports.ccipRequest=m;exports.offchainLookup=O;exports.offchainLookupAbiItem=y;exports.offchainLookupSignature=E;
|
|
2
|
+
//# sourceMappingURL=ccip-DIWF4nDh.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ccip-
|
|
1
|
+
{"version":3,"file":"ccip-DIWF4nDh.cjs","sources":["../node_modules/.pnpm/viem@2.23.13_typescript@5.8.2_zod@3.24.2/node_modules/viem/_esm/errors/ccip.js","../node_modules/.pnpm/viem@2.23.13_typescript@5.8.2_zod@3.24.2/node_modules/viem/_esm/utils/ccip.js"],"sourcesContent":["import { stringify } from '../utils/stringify.js';\nimport { BaseError } from './base.js';\nimport { getUrl } from './utils.js';\nexport class OffchainLookupError extends BaseError {\n constructor({ callbackSelector, cause, data, extraData, sender, urls, }) {\n super(cause.shortMessage ||\n 'An error occurred while fetching for an offchain result.', {\n cause,\n metaMessages: [\n ...(cause.metaMessages || []),\n cause.metaMessages?.length ? '' : [],\n 'Offchain Gateway Call:',\n urls && [\n ' Gateway URL(s):',\n ...urls.map((url) => ` ${getUrl(url)}`),\n ],\n ` Sender: ${sender}`,\n ` Data: ${data}`,\n ` Callback selector: ${callbackSelector}`,\n ` Extra data: ${extraData}`,\n ].flat(),\n name: 'OffchainLookupError',\n });\n }\n}\nexport class OffchainLookupResponseMalformedError extends BaseError {\n constructor({ result, url }) {\n super('Offchain gateway response is malformed. Response data must be a hex value.', {\n metaMessages: [\n `Gateway URL: ${getUrl(url)}`,\n `Response: ${stringify(result)}`,\n ],\n name: 'OffchainLookupResponseMalformedError',\n });\n }\n}\nexport class OffchainLookupSenderMismatchError extends BaseError {\n constructor({ sender, to }) {\n super('Reverted sender address does not match target contract address (`to`).', {\n metaMessages: [\n `Contract address: ${to}`,\n `OffchainLookup sender address: ${sender}`,\n ],\n name: 'OffchainLookupSenderMismatchError',\n });\n }\n}\n//# sourceMappingURL=ccip.js.map","import { call } from '../actions/public/call.js';\nimport { OffchainLookupError, OffchainLookupResponseMalformedError, OffchainLookupSenderMismatchError, } from '../errors/ccip.js';\nimport { HttpRequestError, } from '../errors/request.js';\nimport { decodeErrorResult } from './abi/decodeErrorResult.js';\nimport { encodeAbiParameters } from './abi/encodeAbiParameters.js';\nimport { isAddressEqual } from './address/isAddressEqual.js';\nimport { concat } from './data/concat.js';\nimport { isHex } from './data/isHex.js';\nimport { stringify } from './stringify.js';\nexport const offchainLookupSignature = '0x556f1830';\nexport const offchainLookupAbiItem = {\n name: 'OffchainLookup',\n type: 'error',\n inputs: [\n {\n name: 'sender',\n type: 'address',\n },\n {\n name: 'urls',\n type: 'string[]',\n },\n {\n name: 'callData',\n type: 'bytes',\n },\n {\n name: 'callbackFunction',\n type: 'bytes4',\n },\n {\n name: 'extraData',\n type: 'bytes',\n },\n ],\n};\nexport async function offchainLookup(client, { blockNumber, blockTag, data, to, }) {\n const { args } = decodeErrorResult({\n data,\n abi: [offchainLookupAbiItem],\n });\n const [sender, urls, callData, callbackSelector, extraData] = args;\n const { ccipRead } = client;\n const ccipRequest_ = ccipRead && typeof ccipRead?.request === 'function'\n ? ccipRead.request\n : ccipRequest;\n try {\n if (!isAddressEqual(to, sender))\n throw new OffchainLookupSenderMismatchError({ sender, to });\n const result = await ccipRequest_({ data: callData, sender, urls });\n const { data: data_ } = await call(client, {\n blockNumber,\n blockTag,\n data: concat([\n callbackSelector,\n encodeAbiParameters([{ type: 'bytes' }, { type: 'bytes' }], [result, extraData]),\n ]),\n to,\n });\n return data_;\n }\n catch (err) {\n throw new OffchainLookupError({\n callbackSelector,\n cause: err,\n data,\n extraData,\n sender,\n urls,\n });\n }\n}\nexport async function ccipRequest({ data, sender, urls, }) {\n let error = new Error('An unknown error occurred.');\n for (let i = 0; i < urls.length; i++) {\n const url = urls[i];\n const method = url.includes('{data}') ? 'GET' : 'POST';\n const body = method === 'POST' ? { data, sender } : undefined;\n const headers = method === 'POST' ? { 'Content-Type': 'application/json' } : {};\n try {\n const response = await fetch(url.replace('{sender}', sender.toLowerCase()).replace('{data}', data), {\n body: JSON.stringify(body),\n headers,\n method,\n });\n let result;\n if (response.headers.get('Content-Type')?.startsWith('application/json')) {\n result = (await response.json()).data;\n }\n else {\n result = (await response.text());\n }\n if (!response.ok) {\n error = new HttpRequestError({\n body,\n details: result?.error\n ? stringify(result.error)\n : response.statusText,\n headers: response.headers,\n status: response.status,\n url,\n });\n continue;\n }\n if (!isHex(result)) {\n error = new OffchainLookupResponseMalformedError({\n result,\n url,\n });\n continue;\n }\n return result;\n }\n catch (err) {\n error = new HttpRequestError({\n body,\n details: err.message,\n url,\n });\n }\n }\n throw error;\n}\n//# sourceMappingURL=ccip.js.map"],"names":["OffchainLookupError","BaseError","callbackSelector","cause","data","extraData","sender","urls","_a","url","getUrl","OffchainLookupResponseMalformedError","result","stringify","OffchainLookupSenderMismatchError","to","offchainLookupSignature","offchainLookupAbiItem","offchainLookup","client","blockNumber","blockTag","args","decodeErrorResult","callData","ccipRead","ccipRequest_","ccipRequest","isAddressEqual","data_","call","concat","encodeAbiParameters","err","error","i","method","body","headers","response","HttpRequestError","isHex"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../constants-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../constants-c-vATmlG.cjs");exports.Chain=e.Chain;exports.VIEM_CHAINS=e.VIEM_CHAINS;
|
|
2
2
|
//# sourceMappingURL=constants.cjs.map
|
package/dist/chains/constants.js
CHANGED