@pufferfinance/puffer-sdk 1.8.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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 +55 -48
- package/dist/api/puffer-client.js.map +1 -1
- package/dist/contracts/abis/mainnet/AtomicQueue.cjs +2 -0
- package/dist/contracts/abis/mainnet/AtomicQueue.cjs.map +1 -0
- package/dist/contracts/abis/mainnet/AtomicQueue.d.ts +328 -0
- package/dist/contracts/abis/mainnet/AtomicQueue.js +237 -0
- package/dist/contracts/abis/mainnet/AtomicQueue.js.map +1 -0
- package/dist/contracts/abis/nucleus-atomic-queue-abis.cjs +2 -0
- package/dist/contracts/abis/nucleus-atomic-queue-abis.cjs.map +1 -0
- package/dist/contracts/abis/nucleus-atomic-queue-abis.d.ts +332 -0
- package/dist/contracts/abis/nucleus-atomic-queue-abis.js +9 -0
- package/dist/contracts/abis/nucleus-atomic-queue-abis.js.map +1 -0
- package/dist/contracts/addresses.cjs +1 -1
- package/dist/contracts/addresses.cjs.map +1 -1
- package/dist/contracts/addresses.d.ts +14 -0
- package/dist/contracts/addresses.js +3 -4
- package/dist/contracts/addresses.js.map +1 -1
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.cjs +2 -0
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.cjs.map +1 -0
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.d.ts +6509 -0
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.js +89 -0
- package/dist/contracts/handlers/nucleus-atomic-queue-handler.js.map +1 -0
- package/dist/utils/version.cjs +1 -1
- package/dist/utils/version.js +1 -1
- package/package.json +1 -1
|
@@ -10,6 +10,19 @@ export declare const CONTRACT_ADDRESSES: {
|
|
|
10
10
|
NucleusBoringVault: string;
|
|
11
11
|
NucleusAccountant: string;
|
|
12
12
|
NucleusTeller: string;
|
|
13
|
+
AtomicQueue: string;
|
|
14
|
+
} | {
|
|
15
|
+
PufferVault: string;
|
|
16
|
+
PufferDepositor: string;
|
|
17
|
+
PufferL2Depositor: string;
|
|
18
|
+
PufLocker: string;
|
|
19
|
+
L1RewardManager: string;
|
|
20
|
+
L2RewardManager: string;
|
|
21
|
+
PufferWithdrawalManager: string;
|
|
22
|
+
NucleusBoringVault: string;
|
|
23
|
+
NucleusAccountant: string;
|
|
24
|
+
NucleusTeller: string;
|
|
25
|
+
AtomicQueue?: undefined;
|
|
13
26
|
} | {
|
|
14
27
|
L2RewardManager: string;
|
|
15
28
|
PufferVault?: undefined;
|
|
@@ -21,5 +34,6 @@ export declare const CONTRACT_ADDRESSES: {
|
|
|
21
34
|
NucleusBoringVault?: undefined;
|
|
22
35
|
NucleusAccountant?: undefined;
|
|
23
36
|
NucleusTeller?: undefined;
|
|
37
|
+
AtomicQueue?: undefined;
|
|
24
38
|
};
|
|
25
39
|
};
|
|
@@ -8,12 +8,11 @@ const c = {
|
|
|
8
8
|
L1RewardManager: "0x157788cc028Ac6405bD406f2D1e0A8A22b3cf17b",
|
|
9
9
|
// L2RewardManager is not deployed to mainnet but base.
|
|
10
10
|
L2RewardManager: "0x0000000000000000000000000000000000000000",
|
|
11
|
-
|
|
12
|
-
// https://dashboard.tenderly.co/explorer/fork/f7fd7621-7280-47e5-8521-81b24142814f/transactions.
|
|
13
|
-
PufferWithdrawalManager: "0x8a253974f1de9f64d79f1eaaf850faf406802fce",
|
|
11
|
+
PufferWithdrawalManager: "0xDdA0483184E75a5579ef9635ED14BacCf9d50283",
|
|
14
12
|
NucleusBoringVault: "0x196ead472583bc1e9af7a05f860d9857e1bd3dcc",
|
|
15
13
|
NucleusAccountant: "0xa9fb7e2922216debe3fd5e1bbe7591ee446dc21c",
|
|
16
|
-
NucleusTeller: "0x08eb2eccdf6ebd7aba601791f23ec5b5f68a1d53"
|
|
14
|
+
NucleusTeller: "0x08eb2eccdf6ebd7aba601791f23ec5b5f68a1d53",
|
|
15
|
+
AtomicQueue: "0xc7287780bfa0C5D2dD74e3e51E238B1cd9B221ee"
|
|
17
16
|
},
|
|
18
17
|
[e.Holesky]: {
|
|
19
18
|
PufferVault: "0x9196830bB4c05504E0A8475A0aD566AceEB6BeC9",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addresses.js","sources":["../../lib/contracts/addresses.ts"],"sourcesContent":["import { Chain } from '../chains/constants';\n\n// Source of truth:\n// https://github.com/PufferFinance/Deployments-and-ACL/tree/main/docs/deployments\nexport const CONTRACT_ADDRESSES = {\n [Chain.Mainnet]: {\n PufferVault: '0xD9A442856C234a39a81a089C06451EBAa4306a72',\n PufferDepositor: '0x4aa799c5dfc01ee7d790e3bf1a7c2257ce1dceff',\n PufferL2Depositor: '0x3436E0B85cd929929F5802e792CFE282166E0259',\n PufLocker: '0x48e8dE138C246c14248C94d2D616a2F9eb4590D2',\n L1RewardManager: '0x157788cc028Ac6405bD406f2D1e0A8A22b3cf17b',\n // L2RewardManager is not deployed to mainnet but base.\n L2RewardManager: '0x0000000000000000000000000000000000000000',\n
|
|
1
|
+
{"version":3,"file":"addresses.js","sources":["../../lib/contracts/addresses.ts"],"sourcesContent":["import { Chain } from '../chains/constants';\n\n// Source of truth:\n// https://github.com/PufferFinance/Deployments-and-ACL/tree/main/docs/deployments\nexport const CONTRACT_ADDRESSES = {\n [Chain.Mainnet]: {\n PufferVault: '0xD9A442856C234a39a81a089C06451EBAa4306a72',\n PufferDepositor: '0x4aa799c5dfc01ee7d790e3bf1a7c2257ce1dceff',\n PufferL2Depositor: '0x3436E0B85cd929929F5802e792CFE282166E0259',\n PufLocker: '0x48e8dE138C246c14248C94d2D616a2F9eb4590D2',\n L1RewardManager: '0x157788cc028Ac6405bD406f2D1e0A8A22b3cf17b',\n // L2RewardManager is not deployed to mainnet but base.\n L2RewardManager: '0x0000000000000000000000000000000000000000',\n PufferWithdrawalManager: '0xDdA0483184E75a5579ef9635ED14BacCf9d50283',\n NucleusBoringVault: '0x196ead472583bc1e9af7a05f860d9857e1bd3dcc',\n NucleusAccountant: '0xa9fb7e2922216debe3fd5e1bbe7591ee446dc21c',\n NucleusTeller: '0x08eb2eccdf6ebd7aba601791f23ec5b5f68a1d53',\n AtomicQueue: '0xc7287780bfa0C5D2dD74e3e51E238B1cd9B221ee',\n },\n [Chain.Holesky]: {\n PufferVault: '0x9196830bB4c05504E0A8475A0aD566AceEB6BeC9',\n PufferDepositor: '0x824AC05aeb86A0aD770b8acDe0906d2d4a6c4A8c',\n PufferL2Depositor: '0x0af6998e4828ad8ef8f79a9288d0a861890f791d',\n PufLocker: '0xa58983ad0899a452b7420bc57228e329d7ba92b6',\n L1RewardManager: '0x10f970bcb84B82B82a65eBCbF45F26dD26D69F12',\n L2RewardManager: '0x58C046794f69A8830b0BE737022a45b4acd01dE5',\n // Nucleus contracts are not deployed to holesky.\n PufferWithdrawalManager: '0x5A3E1069B66800c0ecbc91bd81b1AE4D1804DBc4',\n NucleusBoringVault: '0x0000000000000000000000000000000000000000',\n NucleusAccountant: '0x0000000000000000000000000000000000000000',\n NucleusTeller: '0x0000000000000000000000000000000000000000',\n },\n [Chain.Base]: {\n L2RewardManager: '0xF9Dd335bF363b2E4ecFe3c94A86EBD7Dd3Dcf0e7',\n },\n};\n"],"names":["CONTRACT_ADDRESSES","Chain"],"mappings":";AAIO,MAAMA,IAAqB;AAAA,EAChC,CAACC,EAAM,OAAO,GAAG;AAAA,IACf,aAAa;AAAA,IACb,iBAAiB;AAAA,IACjB,mBAAmB;AAAA,IACnB,WAAW;AAAA,IACX,iBAAiB;AAAA;AAAA,IAEjB,iBAAiB;AAAA,IACjB,yBAAyB;AAAA,IACzB,oBAAoB;AAAA,IACpB,mBAAmB;AAAA,IACnB,eAAe;AAAA,IACf,aAAa;AAAA,EACf;AAAA,EACA,CAACA,EAAM,OAAO,GAAG;AAAA,IACf,aAAa;AAAA,IACb,iBAAiB;AAAA,IACjB,mBAAmB;AAAA,IACnB,WAAW;AAAA,IACX,iBAAiB;AAAA,IACjB,iBAAiB;AAAA;AAAA,IAEjB,yBAAyB;AAAA,IACzB,oBAAoB;AAAA,IACpB,mBAAmB;AAAA,IACnB,eAAe;AAAA,EACjB;AAAA,EACA,CAACA,EAAM,IAAI,GAAG;AAAA,IACZ,iBAAiB;AAAA,EACnB;AACF;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var u=Object.defineProperty;var a=(s,t,e)=>t in s?u(s,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):s[t]=e;var n=(s,t,e)=>a(s,typeof t!="symbol"?t+"":t,e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../../constants-BvU-JhfL.cjs"),l=require("../addresses.cjs"),h=require("../abis/nucleus-atomic-queue-abis.cjs"),C=require("../../getContract-MrPLx6gp.cjs");class A{constructor(t,e,i){n(this,"viemChain");this.chain=t,this.walletClient=e,this.publicClient=i,this.viemChain=o.VIEM_CHAINS[t]}getContract(){const t=l.CONTRACT_ADDRESSES[this.chain].AtomicQueue,e=h.NUCLEUS_ATOMIC_QUEUE_ABIS[this.chain].AtomicQueue,i={public:this.publicClient,wallet:this.walletClient};return C.getContract({address:t,abi:e,client:i})}getUserAtomicRequest(t,e,i){return this.getContract().read.getUserAtomicRequest([t,e,i])}isAtomicRequestValid(t,e,i){return this.getContract().read.isAtomicRequestValid([t,e,i])}solve(t,e,i,c,r){return this.getContract().write.solve([t,e,i,c,r],{account:this.walletClient.account,chain:this.viemChain})}updateAtomicRequest(t,e,i,c){return this.getContract().write.updateAtomicRequest([t,e,i],{account:c,chain:this.viemChain})}userAtomicRequest(t,e,i){return this.getContract().read.userAtomicRequest([t,e,i])}}exports.NucleusAtomicQueueHandler=A;
|
|
2
|
+
//# sourceMappingURL=nucleus-atomic-queue-handler.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nucleus-atomic-queue-handler.cjs","sources":["../../../lib/contracts/handlers/nucleus-atomic-queue-handler.ts"],"sourcesContent":["import {\n WalletClient,\n PublicClient,\n getContract,\n Address,\n GetContractReturnType,\n Account,\n} from 'viem';\nimport { Chain } from 'viem';\nimport { Chain as LocalChain, VIEM_CHAINS } from '../../chains/constants';\nimport { CONTRACT_ADDRESSES } from '../addresses';\nimport { NUCLEUS_ATOMIC_QUEUE_ABIS } from '../abis/nucleus-atomic-queue-abis';\n\nexport type AtomicRequest = {\n deadline: bigint;\n atomicPrice: bigint;\n offerAmount: bigint;\n inSolve: boolean;\n};\n\nexport type SolveMetaData = {\n user: Address;\n flags: number;\n assetsToOffer: bigint;\n assetsForWant: bigint;\n};\n\n/**\n * Handler for the `AtomicQueue` contract.\n */\nexport class NucleusAtomicQueueHandler {\n private viemChain: Chain;\n\n constructor(\n private chain: LocalChain,\n private walletClient: WalletClient,\n private publicClient: PublicClient,\n ) {\n this.viemChain = VIEM_CHAINS[chain];\n }\n\n public getContract() {\n const address = CONTRACT_ADDRESSES[this.chain].AtomicQueue as Address;\n const abi = NUCLEUS_ATOMIC_QUEUE_ABIS[this.chain].AtomicQueue;\n const client = { public: this.publicClient, wallet: this.walletClient };\n\n return getContract({ address, abi, client }) as GetContractReturnType<\n typeof abi,\n typeof client,\n Address\n >;\n }\n\n /**\n * Get the atomic request details for a specific user (wallet address).\n * @param user User address\n * @param offerToken Token being offered\n * @param wantToken Token being requested\n */\n public getUserAtomicRequest(\n user: Address,\n offerToken: Address,\n wantToken: Address,\n ) {\n return this.getContract().read.getUserAtomicRequest([\n user,\n offerToken,\n wantToken,\n ]);\n }\n\n /**\n * Check if an atomic request is valid.\n * @param offerToken Token being offered\n * @param user User address\n * @param request Atomic request details\n */\n public isAtomicRequestValid(\n offerToken: Address,\n user: Address,\n request: AtomicRequest,\n ) {\n return this.getContract().read.isAtomicRequestValid([\n offerToken,\n user,\n request,\n ]);\n }\n\n /**\n * Solve atomic requests for multiple users.\n * @param offerToken Token being offered\n * @param wantToken Token being requested\n * @param users Array of user addresses\n * @param runData Execution data for the solve\n * @param solver Address of the solver\n */\n public solve(\n offerToken: Address,\n wantToken: Address,\n users: Address[],\n runData: `0x${string}`,\n solver: Address,\n ) {\n return this.getContract().write.solve(\n [offerToken, wantToken, users, runData, solver],\n {\n account: this.walletClient.account as Account,\n chain: this.viemChain,\n },\n );\n }\n\n /**\n * Update an atomic request.\n * @param offerToken Token being offered\n * @param wantToken Token being requested\n * @param request New atomic request details\n */\n public updateAtomicRequest(\n offerToken: Address,\n wantToken: Address,\n request: AtomicRequest,\n ownerAddress: Address,\n ) {\n return this.getContract().write.updateAtomicRequest(\n [offerToken, wantToken, request],\n { account: ownerAddress, chain: this.viemChain },\n );\n }\n\n /**\n * Get user's atomic request details directly from storage.\n * @param user User address\n * @param offerToken Token being offered\n * @param wantToken Token being requested\n */\n public userAtomicRequest(\n user: Address,\n offerToken: Address,\n wantToken: Address,\n ) {\n return this.getContract().read.userAtomicRequest([\n user,\n offerToken,\n wantToken,\n ]);\n }\n}\n"],"names":["NucleusAtomicQueueHandler","chain","walletClient","publicClient","__publicField","VIEM_CHAINS","address","CONTRACT_ADDRESSES","abi","NUCLEUS_ATOMIC_QUEUE_ABIS","client","getContract","user","offerToken","wantToken","request","users","runData","solver","ownerAddress"],"mappings":"iaA8BO,MAAMA,CAA0B,CAGrC,YACUC,EACAC,EACAC,EACR,CANMC,EAAA,kBAGE,KAAA,MAAAH,EACA,KAAA,aAAAC,EACA,KAAA,aAAAC,EAEH,KAAA,UAAYE,cAAYJ,CAAK,CACpC,CAEO,aAAc,CACnB,MAAMK,EAAUC,EAAA,mBAAmB,KAAK,KAAK,EAAE,YACzCC,EAAMC,EAAA,0BAA0B,KAAK,KAAK,EAAE,YAC5CC,EAAS,CAAE,OAAQ,KAAK,aAAc,OAAQ,KAAK,cAEzD,OAAOC,EAAY,YAAA,CAAE,QAAAL,EAAS,IAAAE,EAAK,OAAAE,CAAQ,CAAA,CAK7C,CAQO,qBACLE,EACAC,EACAC,EACA,CACA,OAAO,KAAK,cAAc,KAAK,qBAAqB,CAClDF,EACAC,EACAC,CAAA,CACD,CACH,CAQO,qBACLD,EACAD,EACAG,EACA,CACA,OAAO,KAAK,cAAc,KAAK,qBAAqB,CAClDF,EACAD,EACAG,CAAA,CACD,CACH,CAUO,MACLF,EACAC,EACAE,EACAC,EACAC,EACA,CACO,OAAA,KAAK,cAAc,MAAM,MAC9B,CAACL,EAAYC,EAAWE,EAAOC,EAASC,CAAM,EAC9C,CACE,QAAS,KAAK,aAAa,QAC3B,MAAO,KAAK,SACd,CAAA,CAEJ,CAQO,oBACLL,EACAC,EACAC,EACAI,EACA,CACO,OAAA,KAAK,cAAc,MAAM,oBAC9B,CAACN,EAAYC,EAAWC,CAAO,EAC/B,CAAE,QAASI,EAAc,MAAO,KAAK,SAAU,CAAA,CAEnD,CAQO,kBACLP,EACAC,EACAC,EACA,CACA,OAAO,KAAK,cAAc,KAAK,kBAAkB,CAC/CF,EACAC,EACAC,CAAA,CACD,CACH,CACF"}
|