@0xmonaco/core 0.2.1 → 0.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/market/api.d.ts +2 -2
- package/dist/api/market/api.d.ts.map +1 -1
- package/dist/api/market/api.js.map +1 -1
- package/dist/api/trading/api.d.ts +19 -2
- package/dist/api/trading/api.d.ts.map +1 -1
- package/dist/api/trading/api.js +20 -3
- package/dist/api/trading/api.js.map +1 -1
- package/dist/api/vault/api.d.ts +25 -42
- package/dist/api/vault/api.d.ts.map +1 -1
- package/dist/api/vault/api.js +65 -211
- package/dist/api/vault/api.js.map +1 -1
- package/dist/api/websocket/base-ws-client.d.ts +8 -0
- package/dist/api/websocket/base-ws-client.d.ts.map +1 -1
- package/dist/api/websocket/base-ws-client.js +25 -6
- package/dist/api/websocket/base-ws-client.js.map +1 -1
- package/dist/api/websocket/{ohlcv-ws-client.d.ts → clients/ohlcv-ws-client.d.ts} +18 -13
- package/dist/api/websocket/clients/ohlcv-ws-client.d.ts.map +1 -0
- package/dist/api/websocket/clients/ohlcv-ws-client.js +126 -0
- package/dist/api/websocket/clients/ohlcv-ws-client.js.map +1 -0
- package/dist/api/websocket/clients/orderbook-ws-client.d.ts +46 -0
- package/dist/api/websocket/clients/orderbook-ws-client.d.ts.map +1 -0
- package/dist/api/websocket/clients/orderbook-ws-client.js +131 -0
- package/dist/api/websocket/clients/orderbook-ws-client.js.map +1 -0
- package/dist/api/websocket/{orders-ws-client.d.ts → clients/orders-ws-client.d.ts} +17 -13
- package/dist/api/websocket/clients/orders-ws-client.d.ts.map +1 -0
- package/dist/api/websocket/clients/orders-ws-client.js +124 -0
- package/dist/api/websocket/clients/orders-ws-client.js.map +1 -0
- package/dist/api/websocket/index.d.ts +4 -3
- package/dist/api/websocket/index.d.ts.map +1 -1
- package/dist/api/websocket/index.js +4 -3
- package/dist/api/websocket/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/sdk.d.ts +2 -1
- package/dist/sdk.d.ts.map +1 -1
- package/dist/sdk.js +6 -1
- package/dist/sdk.js.map +1 -1
- package/package.json +5 -5
- package/dist/api/websocket/ohlcv-ws-client.d.ts.map +0 -1
- package/dist/api/websocket/ohlcv-ws-client.js +0 -123
- package/dist/api/websocket/ohlcv-ws-client.js.map +0 -1
- package/dist/api/websocket/orders-ws-client.d.ts.map +0 -1
- package/dist/api/websocket/orders-ws-client.js +0 -131
- package/dist/api/websocket/orders-ws-client.js.map +0 -1
package/dist/api/vault/api.js
CHANGED
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
* ```
|
|
29
29
|
*/
|
|
30
30
|
import { CONTRACT_ABIS } from "@0xmonaco/contracts";
|
|
31
|
-
import {
|
|
32
|
-
import { APIError, ContractError, InvalidConfigError
|
|
31
|
+
import { erc20Abi, formatUnits, getContract, } from "viem";
|
|
32
|
+
import { APIError, ContractError, InvalidConfigError } from "../../errors";
|
|
33
33
|
import { BaseAPI } from "../base";
|
|
34
34
|
export class VaultAPIImpl extends BaseAPI {
|
|
35
35
|
/**
|
|
@@ -66,45 +66,6 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
66
66
|
throw new APIError("Failed to get vault contract address from applications API", "/api/v1/applications/config", undefined);
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
|
-
/**
|
|
70
|
-
* Maps a token symbol to its contract address.
|
|
71
|
-
*
|
|
72
|
-
* Looks up the token symbol in active trading pairs to find the corresponding
|
|
73
|
-
* contract address. Supports both base and quote token symbols.
|
|
74
|
-
*
|
|
75
|
-
* @param tokenSymbol - The token symbol to map (e.g., "USDC", "ETH", "MockUSDC")
|
|
76
|
-
* @returns Promise mapping to the token contract address
|
|
77
|
-
* @throws {APIError} When token symbol is not found or not supported
|
|
78
|
-
*
|
|
79
|
-
* @example
|
|
80
|
-
* ```typescript
|
|
81
|
-
* const address = await vaultAPI.mapTokenSymbolToAddress("USDC");
|
|
82
|
-
* console.log(address); // "0x6A86dA986797D59A839D136dB490292Cd560C131"
|
|
83
|
-
* ```
|
|
84
|
-
*/
|
|
85
|
-
async mapTokenSymbolToAddress(tokenSymbol) {
|
|
86
|
-
try {
|
|
87
|
-
const tradingPairs = await this.marketAPI.getTradingPairs();
|
|
88
|
-
// Look for the token symbol in base or quote tokens of active pairs
|
|
89
|
-
for (const pair of tradingPairs) {
|
|
90
|
-
if (!pair.is_active)
|
|
91
|
-
continue;
|
|
92
|
-
if (pair.base_token.toLowerCase() === tokenSymbol.toLowerCase()) {
|
|
93
|
-
return pair.base_token_contract;
|
|
94
|
-
}
|
|
95
|
-
if (pair.quote_token.toLowerCase() === tokenSymbol.toLowerCase()) {
|
|
96
|
-
return pair.quote_token_contract;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
throw new APIError(`Token symbol "${tokenSymbol}" not found in active trading pairs`, "/api/v1/market/pairs", 404);
|
|
100
|
-
}
|
|
101
|
-
catch (error) {
|
|
102
|
-
if (error instanceof APIError) {
|
|
103
|
-
throw error;
|
|
104
|
-
}
|
|
105
|
-
throw new APIError(`Failed to resolve token symbol "${tokenSymbol}": ${error instanceof Error ? error.message : "Unknown error"}`, "/api/v1/market/pairs", undefined);
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
69
|
/**
|
|
109
70
|
* Approves the vault contract to spend tokens on behalf of the user.
|
|
110
71
|
*
|
|
@@ -112,7 +73,7 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
112
73
|
* to transfer tokens from the user's wallet. Approval is required before any
|
|
113
74
|
* deposit operations can be performed.
|
|
114
75
|
*
|
|
115
|
-
* @param
|
|
76
|
+
* @param tokenAddress - The token address to approve
|
|
116
77
|
* @param amount - The maximum amount of tokens the vault can spend (as bigint)
|
|
117
78
|
* @param autoWait - Whether to automatically wait for transaction confirmation (defaults to true)
|
|
118
79
|
* @returns Promise resolving to TransactionResult with transaction details
|
|
@@ -124,7 +85,7 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
124
85
|
* ```typescript
|
|
125
86
|
* // Approve vault to spend up to 1000 USDC (auto-waits by default)
|
|
126
87
|
* const result = await vaultAPI.approve(
|
|
127
|
-
* "
|
|
88
|
+
* "0x6A86dA986797D59A839D136dB490292Cd560C131",
|
|
128
89
|
* parseUnits("1000", 6)
|
|
129
90
|
* );
|
|
130
91
|
* console.log(`Approval transaction: ${result.hash}`);
|
|
@@ -132,7 +93,7 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
132
93
|
*
|
|
133
94
|
* // Or skip auto-waiting
|
|
134
95
|
* const result = await vaultAPI.approve(
|
|
135
|
-
* "
|
|
96
|
+
* "0x6A86dA986797D59A839D136dB490292Cd560C131",
|
|
136
97
|
* parseUnits("1000", 6),
|
|
137
98
|
* false
|
|
138
99
|
* );
|
|
@@ -140,63 +101,33 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
140
101
|
* const receipt = await sdk.waitForTransaction(result.hash);
|
|
141
102
|
* ```
|
|
142
103
|
*/
|
|
143
|
-
async approve(
|
|
104
|
+
async approve(tokenAddress, amount, autoWait = true) {
|
|
144
105
|
try {
|
|
145
|
-
const
|
|
146
|
-
this.getVaultAddress(),
|
|
147
|
-
this.mapTokenSymbolToAddress(tokenSymbol),
|
|
148
|
-
]);
|
|
106
|
+
const vaultAddress = await this.getVaultAddress();
|
|
149
107
|
const account = this.walletClient.account;
|
|
150
108
|
if (!account) {
|
|
151
109
|
throw new InvalidConfigError("No account available in wallet client", "account");
|
|
152
110
|
}
|
|
153
|
-
|
|
154
|
-
|
|
111
|
+
const nonce = account.getNonce ? await account.getNonce() : 0n;
|
|
112
|
+
// Use writeContract - handles nonce, gas estimation, signing, and sending automatically
|
|
113
|
+
const hash = await this.walletClient.writeContract({
|
|
114
|
+
address: tokenAddress,
|
|
155
115
|
abi: erc20Abi,
|
|
156
116
|
functionName: "approve",
|
|
157
117
|
args: [vaultAddress, amount],
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
const [nonce, gasPrice] = await Promise.all([
|
|
161
|
-
this.publicClient.getTransactionCount({ address: account.address }),
|
|
162
|
-
this.publicClient.getGasPrice(),
|
|
163
|
-
]);
|
|
164
|
-
// 3) Gas limit
|
|
165
|
-
const gasLimit = await this.publicClient.estimateGas({
|
|
166
|
-
account: account.address,
|
|
167
|
-
to: tokenAddress,
|
|
168
|
-
data,
|
|
169
|
-
});
|
|
170
|
-
// 4) Use the most basic raw transaction approach
|
|
171
|
-
const transaction = {
|
|
172
|
-
chainId: this.chain.id,
|
|
173
|
-
nonce,
|
|
174
|
-
gasPrice,
|
|
175
|
-
gas: gasLimit,
|
|
176
|
-
to: tokenAddress,
|
|
177
|
-
value: 0n,
|
|
178
|
-
data,
|
|
179
|
-
type: "legacy",
|
|
180
|
-
};
|
|
181
|
-
// 5) Sign transaction with account
|
|
182
|
-
const signature = await account.signTransaction?.(transaction);
|
|
183
|
-
if (!signature) {
|
|
184
|
-
throw new TransactionError("Failed to sign transaction", undefined);
|
|
185
|
-
}
|
|
186
|
-
// 6) Send raw transaction
|
|
187
|
-
const hash = await this.publicClient.sendRawTransaction({
|
|
188
|
-
serializedTransaction: signature,
|
|
118
|
+
chain: this.chain,
|
|
119
|
+
account
|
|
189
120
|
});
|
|
190
121
|
const txResult = {
|
|
122
|
+
nonce,
|
|
191
123
|
hash,
|
|
192
|
-
status: "pending"
|
|
193
|
-
nonce: BigInt(nonce),
|
|
124
|
+
status: "pending"
|
|
194
125
|
};
|
|
195
126
|
// Handle auto-waiting for transaction confirmation
|
|
196
127
|
return await this.waitForTransaction(txResult, autoWait);
|
|
197
128
|
}
|
|
198
129
|
catch (error) {
|
|
199
|
-
throw new ContractError(`Failed to approve token ${
|
|
130
|
+
throw new ContractError(`Failed to approve token ${tokenAddress}`, error instanceof Error ? error.message : "Unknown error", undefined);
|
|
200
131
|
}
|
|
201
132
|
}
|
|
202
133
|
/**
|
|
@@ -208,7 +139,7 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
208
139
|
*
|
|
209
140
|
* Note: This method requires prior approval via the approve() method.
|
|
210
141
|
*
|
|
211
|
-
* @param
|
|
142
|
+
* @param tokenAddress - The token address to deposit
|
|
212
143
|
* @param amount - The amount of tokens to deposit (as bigint)
|
|
213
144
|
* @param autoWait - Whether to automatically wait for transaction confirmation (defaults to true)
|
|
214
145
|
* @returns Promise resolving to TransactionResult with transaction details
|
|
@@ -220,7 +151,7 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
220
151
|
* ```typescript
|
|
221
152
|
* // Deposit 100 USDC into the vault (auto-waits by default)
|
|
222
153
|
* const result = await vaultAPI.deposit(
|
|
223
|
-
* "
|
|
154
|
+
* "0x123...456",
|
|
224
155
|
* parseUnits("100", 6)
|
|
225
156
|
* );
|
|
226
157
|
* console.log(`Deposit transaction: ${result.hash}`);
|
|
@@ -228,7 +159,7 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
228
159
|
*
|
|
229
160
|
* // Or skip auto-waiting
|
|
230
161
|
* const result = await vaultAPI.deposit(
|
|
231
|
-
* "
|
|
162
|
+
* "0x123...456",
|
|
232
163
|
* parseUnits("100", 6),
|
|
233
164
|
* false
|
|
234
165
|
* );
|
|
@@ -236,73 +167,40 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
236
167
|
* const receipt = await sdk.waitForTransaction(result.hash);
|
|
237
168
|
* ```
|
|
238
169
|
*/
|
|
239
|
-
async deposit(
|
|
170
|
+
async deposit(tokenAddress, amount, autoWait = true) {
|
|
240
171
|
try {
|
|
241
|
-
const
|
|
242
|
-
this.getVaultAddress(),
|
|
243
|
-
this.mapTokenSymbolToAddress(tokenSymbol),
|
|
244
|
-
]);
|
|
172
|
+
const vaultAddress = await this.getVaultAddress();
|
|
245
173
|
// Check if approval is needed before proceeding
|
|
246
174
|
const needsApproval = await this.needsApproval(tokenAddress, amount);
|
|
247
175
|
if (needsApproval) {
|
|
248
|
-
throw new ContractError(`Approval required before deposit. Please invoke approve() first for token ${
|
|
176
|
+
throw new ContractError(`Approval required before deposit. Please invoke approve() first for token ${tokenAddress}`, "APPROVAL_REQUIRED", undefined);
|
|
249
177
|
}
|
|
250
178
|
// Get account address
|
|
251
179
|
const [account] = await this.walletClient.getAddresses();
|
|
252
180
|
// Get signature from backend API
|
|
253
181
|
const { seed, signature } = await this.getDepositSignature(tokenAddress, amount, account);
|
|
254
|
-
// Use raw transaction approach like we did for approval
|
|
255
182
|
const walletAccount = this.walletClient.account;
|
|
256
183
|
if (!walletAccount) {
|
|
257
184
|
throw new InvalidConfigError("No account available in wallet client", "account");
|
|
258
185
|
}
|
|
259
|
-
|
|
260
|
-
|
|
186
|
+
const hash = await this.walletClient.writeContract({
|
|
187
|
+
address: vaultAddress,
|
|
261
188
|
abi: CONTRACT_ABIS.vault,
|
|
262
189
|
functionName: "deposit",
|
|
263
190
|
args: [tokenAddress, amount, seed, signature],
|
|
191
|
+
account: walletAccount,
|
|
192
|
+
chain: this.chain
|
|
264
193
|
});
|
|
265
|
-
|
|
266
|
-
const [nonce, gasPrice] = await Promise.all([
|
|
267
|
-
this.publicClient.getTransactionCount({
|
|
268
|
-
address: walletAccount.address,
|
|
269
|
-
}),
|
|
270
|
-
this.publicClient.getGasPrice(),
|
|
271
|
-
]);
|
|
272
|
-
// Estimate gas
|
|
273
|
-
const gasLimit = await this.publicClient.estimateGas({
|
|
274
|
-
account: walletAccount.address,
|
|
275
|
-
to: vaultAddress,
|
|
276
|
-
data,
|
|
277
|
-
});
|
|
278
|
-
// Sign transaction
|
|
279
|
-
const signed = await walletAccount.signTransaction?.({
|
|
280
|
-
chain: this.chain,
|
|
281
|
-
nonce,
|
|
282
|
-
gas: gasLimit,
|
|
283
|
-
gasPrice,
|
|
284
|
-
to: vaultAddress,
|
|
285
|
-
value: 0n,
|
|
286
|
-
data,
|
|
287
|
-
type: "legacy",
|
|
288
|
-
});
|
|
289
|
-
if (!signed) {
|
|
290
|
-
throw new TransactionError("Failed to sign transaction", undefined);
|
|
291
|
-
}
|
|
292
|
-
// Send raw transaction
|
|
293
|
-
const hash = await this.publicClient.sendRawTransaction({
|
|
294
|
-
serializedTransaction: signed,
|
|
295
|
-
});
|
|
194
|
+
const nonce = walletAccount.getNonce ? await walletAccount.getNonce() : 0n;
|
|
296
195
|
const txResult = {
|
|
297
196
|
hash,
|
|
298
197
|
status: "pending",
|
|
299
|
-
nonce
|
|
198
|
+
nonce,
|
|
300
199
|
};
|
|
301
|
-
// Handle auto-waiting for transaction confirmation
|
|
302
200
|
return await this.waitForTransaction(txResult, autoWait);
|
|
303
201
|
}
|
|
304
202
|
catch (error) {
|
|
305
|
-
throw new ContractError(`Failed to deposit ${amount} of token ${
|
|
203
|
+
throw new ContractError(`Failed to deposit ${amount} of token ${tokenAddress}`, error instanceof Error ? error.message : "Unknown error", undefined);
|
|
306
204
|
}
|
|
307
205
|
}
|
|
308
206
|
/**
|
|
@@ -312,7 +210,7 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
312
210
|
* user's wallet. The method obtains a signature from the API Gateway and then
|
|
313
211
|
* executes the withdrawal transaction on-chain.
|
|
314
212
|
*
|
|
315
|
-
* @param
|
|
213
|
+
* @param tokenAddress - The token address to withdraw
|
|
316
214
|
* @param amount - The amount of tokens to withdraw (as bigint)
|
|
317
215
|
* @param autoWait - Whether to automatically wait for transaction confirmation (defaults to true)
|
|
318
216
|
* @returns Promise resolving to TransactionResult with transaction details
|
|
@@ -325,7 +223,7 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
325
223
|
* ```typescript
|
|
326
224
|
* // Withdraw 50 USDC from the vault (auto-waits by default)
|
|
327
225
|
* const result = await vaultAPI.withdraw(
|
|
328
|
-
* "
|
|
226
|
+
* "0x123...456",
|
|
329
227
|
* parseUnits("50", 6)
|
|
330
228
|
* );
|
|
331
229
|
* console.log(`Withdrawal transaction: ${result.hash}`);
|
|
@@ -333,7 +231,7 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
333
231
|
*
|
|
334
232
|
* // Or skip auto-waiting
|
|
335
233
|
* const result = await vaultAPI.withdraw(
|
|
336
|
-
* "
|
|
234
|
+
* "0x123...456",
|
|
337
235
|
* parseUnits("50", 6),
|
|
338
236
|
* false
|
|
339
237
|
* );
|
|
@@ -341,67 +239,36 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
341
239
|
* const receipt = await sdk.waitForTransaction(result.hash);
|
|
342
240
|
* ```
|
|
343
241
|
*/
|
|
344
|
-
async withdraw(
|
|
242
|
+
async withdraw(tokenAddress, amount, autoWait = true) {
|
|
345
243
|
try {
|
|
346
|
-
const
|
|
347
|
-
this.getVaultAddress(),
|
|
348
|
-
this.mapTokenSymbolToAddress(tokenSymbol),
|
|
349
|
-
]);
|
|
244
|
+
const vaultAddress = await this.getVaultAddress();
|
|
350
245
|
const [account] = await this.walletClient.getAddresses();
|
|
351
246
|
// Get signature from backend API
|
|
352
247
|
const { seed, signature } = await this.getWithdrawSignature(tokenAddress, amount, account);
|
|
353
|
-
// Use raw transaction approach like we did for deposit
|
|
354
248
|
const walletAccount = this.walletClient.account;
|
|
355
249
|
if (!walletAccount) {
|
|
356
250
|
throw new InvalidConfigError("No account available in wallet client", "account");
|
|
357
251
|
}
|
|
358
|
-
//
|
|
359
|
-
const
|
|
252
|
+
// Use writeContract - handles nonce, gas estimation, signing, and sending automatically
|
|
253
|
+
const hash = await this.walletClient.writeContract({
|
|
254
|
+
address: vaultAddress,
|
|
360
255
|
abi: CONTRACT_ABIS.vault,
|
|
361
256
|
functionName: "withdraw",
|
|
362
257
|
args: [tokenAddress, amount, seed, signature],
|
|
258
|
+
account: walletAccount,
|
|
259
|
+
chain: this.chain
|
|
363
260
|
});
|
|
364
|
-
|
|
365
|
-
const [nonce, gasPrice] = await Promise.all([
|
|
366
|
-
this.publicClient.getTransactionCount({
|
|
367
|
-
address: walletAccount.address,
|
|
368
|
-
}),
|
|
369
|
-
this.publicClient.getGasPrice(),
|
|
370
|
-
]);
|
|
371
|
-
// Estimate gas
|
|
372
|
-
const gasLimit = await this.publicClient.estimateGas({
|
|
373
|
-
account: walletAccount.address,
|
|
374
|
-
to: vaultAddress,
|
|
375
|
-
data,
|
|
376
|
-
});
|
|
377
|
-
// Sign transaction
|
|
378
|
-
const signed = await walletAccount.signTransaction?.({
|
|
379
|
-
chain: this.chain,
|
|
380
|
-
nonce,
|
|
381
|
-
gas: gasLimit,
|
|
382
|
-
gasPrice,
|
|
383
|
-
to: vaultAddress,
|
|
384
|
-
value: 0n,
|
|
385
|
-
data,
|
|
386
|
-
type: "legacy",
|
|
387
|
-
});
|
|
388
|
-
if (!signed) {
|
|
389
|
-
throw new TransactionError("Failed to sign transaction", undefined);
|
|
390
|
-
}
|
|
391
|
-
// Send raw transaction
|
|
392
|
-
const hash = await this.publicClient.sendRawTransaction({
|
|
393
|
-
serializedTransaction: signed,
|
|
394
|
-
});
|
|
261
|
+
const nonce = walletAccount.getNonce ? await walletAccount.getNonce() : 0n;
|
|
395
262
|
const txResult = {
|
|
396
263
|
hash,
|
|
397
264
|
status: "pending",
|
|
398
|
-
nonce
|
|
265
|
+
nonce,
|
|
399
266
|
};
|
|
400
267
|
// Handle auto-waiting for transaction confirmation
|
|
401
268
|
return await this.waitForTransaction(txResult, autoWait);
|
|
402
269
|
}
|
|
403
270
|
catch (error) {
|
|
404
|
-
throw new ContractError(`Failed to withdraw ${amount} of token ${
|
|
271
|
+
throw new ContractError(`Failed to withdraw ${amount} of token ${tokenAddress}`, error instanceof Error ? error.message : "Unknown error", undefined);
|
|
405
272
|
}
|
|
406
273
|
}
|
|
407
274
|
/**
|
|
@@ -410,23 +277,20 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
410
277
|
* Queries the vault contract to get the current balance of a specific token
|
|
411
278
|
* for the connected wallet. Returns both raw amount and formatted display values.
|
|
412
279
|
*
|
|
413
|
-
* @param
|
|
280
|
+
* @param tokenAddress - The token address to check balance for
|
|
414
281
|
* @returns Promise resolving to Balance with token balance details
|
|
415
282
|
* @throws {ContractError} When balance retrieval fails
|
|
416
283
|
*
|
|
417
284
|
* @example
|
|
418
285
|
* ```typescript
|
|
419
|
-
* const balance = await vaultAPI.getBalance("
|
|
286
|
+
* const balance = await vaultAPI.getBalance("0x123...456");
|
|
420
287
|
* console.log(`Vault balance: ${balance.formatted} ${balance.symbol}`);
|
|
421
288
|
* console.log(`Raw amount: ${balance.amount}`);
|
|
422
289
|
* ```
|
|
423
290
|
*/
|
|
424
|
-
async getBalance(
|
|
291
|
+
async getBalance(tokenAddress) {
|
|
425
292
|
try {
|
|
426
|
-
const
|
|
427
|
-
this.getVaultAddress(),
|
|
428
|
-
this.mapTokenSymbolToAddress(tokenSymbol),
|
|
429
|
-
]);
|
|
293
|
+
const vaultAddress = await this.getVaultAddress();
|
|
430
294
|
const [account] = await this.walletClient.getAddresses();
|
|
431
295
|
// Get balance from vault contract
|
|
432
296
|
const balance = (await this.publicClient.readContract({
|
|
@@ -454,7 +318,7 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
454
318
|
};
|
|
455
319
|
}
|
|
456
320
|
catch (error) {
|
|
457
|
-
throw new ContractError(`Failed to get balance for token ${
|
|
321
|
+
throw new ContractError(`Failed to get balance for token ${tokenAddress}`, error instanceof Error ? error.message : "Unknown error", undefined);
|
|
458
322
|
}
|
|
459
323
|
}
|
|
460
324
|
/**
|
|
@@ -463,33 +327,29 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
463
327
|
* Queries the ERC20 token contract to get the current allowance granted to the
|
|
464
328
|
* vault contract for spending tokens on behalf of the user.
|
|
465
329
|
*
|
|
466
|
-
* @param
|
|
330
|
+
* @param tokenAddress - The token address to check allowance for
|
|
467
331
|
* @returns Promise resolving to the current allowance amount as bigint
|
|
468
332
|
* @throws {ContractError} When allowance retrieval fails
|
|
469
333
|
*
|
|
470
334
|
* @example
|
|
471
335
|
* ```typescript
|
|
472
|
-
* const allowance = await vaultAPI.getAllowance("
|
|
336
|
+
* const allowance = await vaultAPI.getAllowance("0x123...456");
|
|
473
337
|
* console.log(`Current allowance: ${formatUnits(allowance, 6)} USDC`);
|
|
474
338
|
* ```
|
|
475
339
|
*/
|
|
476
|
-
async getAllowance(
|
|
340
|
+
async getAllowance(tokenAddress) {
|
|
477
341
|
try {
|
|
478
|
-
const
|
|
479
|
-
this.getVaultAddress(),
|
|
480
|
-
this.mapTokenSymbolToAddress(tokenSymbol),
|
|
481
|
-
]);
|
|
342
|
+
const vaultAddress = await this.getVaultAddress();
|
|
482
343
|
const [account] = await this.walletClient.getAddresses();
|
|
483
|
-
|
|
344
|
+
return (await this.publicClient.readContract({
|
|
484
345
|
address: tokenAddress,
|
|
485
346
|
abi: erc20Abi,
|
|
486
347
|
functionName: "allowance",
|
|
487
348
|
args: [account, vaultAddress],
|
|
488
349
|
}));
|
|
489
|
-
return allowance;
|
|
490
350
|
}
|
|
491
351
|
catch (error) {
|
|
492
|
-
throw new ContractError(`Failed to get allowance for token ${
|
|
352
|
+
throw new ContractError(`Failed to get allowance for token ${tokenAddress}`, error instanceof Error ? error.message : "Unknown error", undefined);
|
|
493
353
|
}
|
|
494
354
|
}
|
|
495
355
|
/**
|
|
@@ -498,7 +358,7 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
498
358
|
* Compares the current allowance with the requested amount to determine if
|
|
499
359
|
* the user needs to approve more tokens before performing operations.
|
|
500
360
|
*
|
|
501
|
-
* @param
|
|
361
|
+
* @param tokenAddress - The token address to check for
|
|
502
362
|
* @param amount - The amount to check approval for (as bigint)
|
|
503
363
|
* @returns Promise resolving to true if approval is needed, false otherwise
|
|
504
364
|
* @throws {ContractError} When approval check fails
|
|
@@ -506,23 +366,23 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
506
366
|
* @example
|
|
507
367
|
* ```typescript
|
|
508
368
|
* const needsApproval = await vaultAPI.needsApproval(
|
|
509
|
-
* "
|
|
369
|
+
* "0x123...456",
|
|
510
370
|
* parseUnits("100", 6)
|
|
511
371
|
* );
|
|
512
372
|
*
|
|
513
373
|
* if (needsApproval) {
|
|
514
374
|
* console.log("Approval required before deposit");
|
|
515
|
-
* await vaultAPI.approve("
|
|
375
|
+
* await vaultAPI.approve("0x123...456", parseUnits("100", 6));
|
|
516
376
|
* }
|
|
517
377
|
* ```
|
|
518
378
|
*/
|
|
519
|
-
async needsApproval(
|
|
379
|
+
async needsApproval(tokenAddress, amount) {
|
|
520
380
|
try {
|
|
521
|
-
const allowance = await this.getAllowance(
|
|
381
|
+
const allowance = await this.getAllowance(tokenAddress);
|
|
522
382
|
return allowance < amount;
|
|
523
383
|
}
|
|
524
384
|
catch (error) {
|
|
525
|
-
throw new ContractError(`Failed to check approval for token ${
|
|
385
|
+
throw new ContractError(`Failed to check approval for token ${tokenAddress}`, error instanceof Error ? error.message : "Unknown error", undefined);
|
|
526
386
|
}
|
|
527
387
|
}
|
|
528
388
|
/**
|
|
@@ -532,19 +392,16 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
532
392
|
* the cryptographic signature required for deposit transactions. The signature
|
|
533
393
|
* validates the deposit request and ensures proper authorization.
|
|
534
394
|
*
|
|
535
|
-
* @param
|
|
395
|
+
* @param tokenAddress - The token address to deposit
|
|
536
396
|
* @param amount - The amount to deposit (as bigint)
|
|
537
397
|
* @param userAddress - The user's wallet address
|
|
538
398
|
* @returns Promise resolving to object containing seed and signature
|
|
539
399
|
* @throws {APIError} When signature retrieval fails
|
|
540
400
|
* @private
|
|
541
401
|
*/
|
|
542
|
-
async getDepositSignature(
|
|
402
|
+
async getDepositSignature(tokenAddress, amount, userAddress) {
|
|
543
403
|
try {
|
|
544
|
-
const
|
|
545
|
-
this.getVaultAddress(),
|
|
546
|
-
this.mapTokenSymbolToAddress(tokenSymbol),
|
|
547
|
-
]);
|
|
404
|
+
const vaultAddress = await this.getVaultAddress();
|
|
548
405
|
// Generate a unique nonce and expiry for this transaction
|
|
549
406
|
const nonce = Math.floor(Date.now() / 1000); // Current timestamp as nonce
|
|
550
407
|
const expiry = Math.floor(Date.now() / 1000) + 3600; // 1 hour from now
|
|
@@ -576,19 +433,16 @@ export class VaultAPIImpl extends BaseAPI {
|
|
|
576
433
|
* the cryptographic signature required for withdrawal transactions. The signature
|
|
577
434
|
* validates the withdrawal request and ensures proper authorization.
|
|
578
435
|
*
|
|
579
|
-
* @param
|
|
436
|
+
* @param tokenAddress - The token address to withdraw
|
|
580
437
|
* @param amount - The amount to withdraw (as bigint)
|
|
581
438
|
* @param userAddress - The user's wallet address
|
|
582
439
|
* @returns Promise resolving to object containing seed and signature
|
|
583
440
|
* @throws {APIError} When signature retrieval fails
|
|
584
441
|
* @private
|
|
585
442
|
*/
|
|
586
|
-
async getWithdrawSignature(
|
|
443
|
+
async getWithdrawSignature(tokenAddress, amount, userAddress) {
|
|
587
444
|
try {
|
|
588
|
-
const
|
|
589
|
-
this.getVaultAddress(),
|
|
590
|
-
this.mapTokenSymbolToAddress(tokenSymbol),
|
|
591
|
-
]);
|
|
445
|
+
const vaultAddress = await this.getVaultAddress();
|
|
592
446
|
const data = await this.makeAuthenticatedRequest("/api/v1/withdraw/signature", {
|
|
593
447
|
method: "POST",
|
|
594
448
|
body: JSON.stringify({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/api/vault/api.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/api/vault/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
* - JWT authentication via query parameters
|
|
10
10
|
*/
|
|
11
11
|
import type { BaseWebSocketClient, WebSocketConfig, ConnectionStatus } from "@0xmonaco/types";
|
|
12
|
+
import { WebSocketChannel } from "@0xmonaco/types";
|
|
12
13
|
/**
|
|
13
14
|
* Base WebSocket client implementation for Monaco Protocol
|
|
14
15
|
*/
|
|
@@ -49,6 +50,13 @@ export declare class BaseWebSocketClientImpl implements BaseWebSocketClient {
|
|
|
49
50
|
protected handleConnectionError(error: any): void;
|
|
50
51
|
/** Handle incoming WebSocket messages - can be overridden by subclasses */
|
|
51
52
|
protected handleMessage(message: any): void;
|
|
53
|
+
/**
|
|
54
|
+
* Helper method to validate WebSocket event messages using WebSocketChannel enum
|
|
55
|
+
* @param message - The message to validate
|
|
56
|
+
* @param channelType - The expected channel type (WebSocketChannel.Orders, WebSocketChannel.Orderbook, etc.)
|
|
57
|
+
* @returns True if the message is a valid event with the specified channel type
|
|
58
|
+
*/
|
|
59
|
+
protected isEventMessage(message: any, channelType: WebSocketChannel): boolean;
|
|
52
60
|
/** Create WebSocket connection with event handlers */
|
|
53
61
|
protected createConnection(): Promise<void>;
|
|
54
62
|
/** Schedule reconnect with exponential backoff */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-ws-client.d.ts","sourceRoot":"","sources":["../../../src/api/websocket/base-ws-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EACjB,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"base-ws-client.d.ts","sourceRoot":"","sources":["../../../src/api/websocket/base-ws-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD;;GAEG;AACH,qBAAa,uBAAwB,YAAW,mBAAmB;IAEjE,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,SAAS;IACrD,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,SAAS;IACrD,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,SAAS;IACpD,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,SAAS;IAGtD,SAAS,CAAC,EAAE,EAAE,SAAS,GAAG,IAAI,CAAQ;IACtC,SAAS,CAAC,MAAM,EAAE,eAAe,CAAC;IAClC,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAkB;IAG9D,SAAS,CAAC,iBAAiB,SAAK;IAChC,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAQ;IAGvD,SAAS,CAAC,YAAY,EAAE,GAAG,EAAE,CAAM;IACnC,SAAS,CAAC,eAAe,UAAS;IAGlC,SAAS,CAAC,iBAAiB,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAQ;IAC1D,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAc;gBAE5B,MAAM,EAAE,eAAe;IAUnC,sCAAsC;IAChC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA4B9B,2CAA2C;IAC3C,UAAU,IAAI,IAAI;IAclB,oCAAoC;IACpC,mBAAmB,IAAI,gBAAgB;IAIvC,mCAAmC;IACnC,WAAW,IAAI,OAAO;IAItB,8CAA8C;IAC9C,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAInC,2DAA2D;IAC3D,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI;IAQrB,gCAAgC;IAChC,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAOnC,gCAAgC;IAChC,SAAS,CAAC,cAAc,IAAI,IAAI;IAchC,8BAA8B;IAC9B,SAAS,CAAC,aAAa,IAAI,IAAI;IAO/B,4CAA4C;IAC5C,SAAS,CAAC,qBAAqB,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAOjD,2EAA2E;IAC3E,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAU3C;;;;;OAKG;IACH,SAAS,CAAC,cAAc,CACtB,OAAO,EAAE,GAAG,EACZ,WAAW,EAAE,gBAAgB,GAC5B,OAAO;IAeV,sDAAsD;cACtC,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAiEjD,kDAAkD;IAClD,SAAS,CAAC,iBAAiB,IAAI,IAAI;IA0BnC,8BAA8B;IAC9B,SAAS,CAAC,kBAAkB,IAAI,IAAI;CAMrC"}
|