@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.
Files changed (44) hide show
  1. package/dist/api/market/api.d.ts +2 -2
  2. package/dist/api/market/api.d.ts.map +1 -1
  3. package/dist/api/market/api.js.map +1 -1
  4. package/dist/api/trading/api.d.ts +19 -2
  5. package/dist/api/trading/api.d.ts.map +1 -1
  6. package/dist/api/trading/api.js +20 -3
  7. package/dist/api/trading/api.js.map +1 -1
  8. package/dist/api/vault/api.d.ts +25 -42
  9. package/dist/api/vault/api.d.ts.map +1 -1
  10. package/dist/api/vault/api.js +65 -211
  11. package/dist/api/vault/api.js.map +1 -1
  12. package/dist/api/websocket/base-ws-client.d.ts +8 -0
  13. package/dist/api/websocket/base-ws-client.d.ts.map +1 -1
  14. package/dist/api/websocket/base-ws-client.js +25 -6
  15. package/dist/api/websocket/base-ws-client.js.map +1 -1
  16. package/dist/api/websocket/{ohlcv-ws-client.d.ts → clients/ohlcv-ws-client.d.ts} +18 -13
  17. package/dist/api/websocket/clients/ohlcv-ws-client.d.ts.map +1 -0
  18. package/dist/api/websocket/clients/ohlcv-ws-client.js +126 -0
  19. package/dist/api/websocket/clients/ohlcv-ws-client.js.map +1 -0
  20. package/dist/api/websocket/clients/orderbook-ws-client.d.ts +46 -0
  21. package/dist/api/websocket/clients/orderbook-ws-client.d.ts.map +1 -0
  22. package/dist/api/websocket/clients/orderbook-ws-client.js +131 -0
  23. package/dist/api/websocket/clients/orderbook-ws-client.js.map +1 -0
  24. package/dist/api/websocket/{orders-ws-client.d.ts → clients/orders-ws-client.d.ts} +17 -13
  25. package/dist/api/websocket/clients/orders-ws-client.d.ts.map +1 -0
  26. package/dist/api/websocket/clients/orders-ws-client.js +124 -0
  27. package/dist/api/websocket/clients/orders-ws-client.js.map +1 -0
  28. package/dist/api/websocket/index.d.ts +4 -3
  29. package/dist/api/websocket/index.d.ts.map +1 -1
  30. package/dist/api/websocket/index.js +4 -3
  31. package/dist/api/websocket/index.js.map +1 -1
  32. package/dist/index.d.ts +1 -1
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/sdk.d.ts +2 -1
  35. package/dist/sdk.d.ts.map +1 -1
  36. package/dist/sdk.js +6 -1
  37. package/dist/sdk.js.map +1 -1
  38. package/package.json +5 -5
  39. package/dist/api/websocket/ohlcv-ws-client.d.ts.map +0 -1
  40. package/dist/api/websocket/ohlcv-ws-client.js +0 -123
  41. package/dist/api/websocket/ohlcv-ws-client.js.map +0 -1
  42. package/dist/api/websocket/orders-ws-client.d.ts.map +0 -1
  43. package/dist/api/websocket/orders-ws-client.js +0 -131
  44. package/dist/api/websocket/orders-ws-client.js.map +0 -1
@@ -28,8 +28,8 @@
28
28
  * ```
29
29
  */
30
30
  import { CONTRACT_ABIS } from "@0xmonaco/contracts";
31
- import { encodeFunctionData, erc20Abi, formatUnits, getContract, } from "viem";
32
- import { APIError, ContractError, InvalidConfigError, TransactionError, } from "../../errors";
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 tokenSymbol - The token symbol to approve (e.g., "USDC", "ETH", "MockUSDC")
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
- * "USDC",
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
- * "MockUSDC",
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(tokenSymbol, amount, autoWait = true) {
104
+ async approve(tokenAddress, amount, autoWait = true) {
144
105
  try {
145
- const [vaultAddress, tokenAddress] = await Promise.all([
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
- // 1) Calldata for approve
154
- const data = encodeFunctionData({
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
- // 2) Nonce & gas price
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 ${tokenSymbol}`, error instanceof Error ? error.message : "Unknown error", undefined);
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 tokenSymbol - The token symbol to deposit (e.g., "USDC", "ETH", "MockUSDC")
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
- * "USDC",
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
- * "MockUSDC",
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(tokenSymbol, amount, autoWait = true) {
170
+ async deposit(tokenAddress, amount, autoWait = true) {
240
171
  try {
241
- const [vaultAddress, tokenAddress] = await Promise.all([
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 ${tokenSymbol}`, "APPROVAL_REQUIRED", undefined);
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
- // Encode the deposit function call
260
- const data = encodeFunctionData({
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
- // Get nonce and gas price
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: BigInt(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 ${tokenSymbol}`, error instanceof Error ? error.message : "Unknown error", undefined);
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 tokenSymbol - The token symbol to withdraw (e.g., "USDC", "ETH", "MockUSDC")
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
- * "USDC",
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
- * "MockUSDC",
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(tokenSymbol, amount, autoWait = true) {
242
+ async withdraw(tokenAddress, amount, autoWait = true) {
345
243
  try {
346
- const [vaultAddress, tokenAddress] = await Promise.all([
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
- // Encode the withdraw function call
359
- const data = encodeFunctionData({
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
- // Get nonce and gas price
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: BigInt(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 ${tokenSymbol}`, error instanceof Error ? error.message : "Unknown error", undefined);
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 tokenSymbol - The token symbol to check balance for (e.g., "USDC", "ETH", "MockUSDC")
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("USDC");
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(tokenSymbol) {
291
+ async getBalance(tokenAddress) {
425
292
  try {
426
- const [vaultAddress, tokenAddress] = await Promise.all([
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 ${tokenSymbol}`, error instanceof Error ? error.message : "Unknown error", undefined);
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 tokenSymbol - The token symbol to check allowance for (e.g., "USDC", "ETH", "MockUSDC")
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("USDC");
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(tokenSymbol) {
340
+ async getAllowance(tokenAddress) {
477
341
  try {
478
- const [vaultAddress, tokenAddress] = await Promise.all([
479
- this.getVaultAddress(),
480
- this.mapTokenSymbolToAddress(tokenSymbol),
481
- ]);
342
+ const vaultAddress = await this.getVaultAddress();
482
343
  const [account] = await this.walletClient.getAddresses();
483
- const allowance = (await this.publicClient.readContract({
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 ${tokenSymbol}`, error instanceof Error ? error.message : "Unknown error", undefined);
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 tokenSymbol - The token symbol to check (e.g., "USDC", "ETH", "MockUSDC")
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
- * "USDC",
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("USDC", parseUnits("100", 6));
375
+ * await vaultAPI.approve("0x123...456", parseUnits("100", 6));
516
376
  * }
517
377
  * ```
518
378
  */
519
- async needsApproval(tokenSymbol, amount) {
379
+ async needsApproval(tokenAddress, amount) {
520
380
  try {
521
- const allowance = await this.getAllowance(tokenSymbol);
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 ${tokenSymbol}`, error instanceof Error ? error.message : "Unknown error", undefined);
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 tokenSymbol - The token symbol to deposit (e.g., "USDC", "ETH", "MockUSDC")
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(tokenSymbol, amount, userAddress) {
402
+ async getDepositSignature(tokenAddress, amount, userAddress) {
543
403
  try {
544
- const [vaultAddress, tokenAddress] = await Promise.all([
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 tokenSymbol - The token symbol to withdraw (e.g., "USDC", "ETH", "MockUSDC")
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(tokenSymbol, amount, userAddress) {
443
+ async getWithdrawSignature(tokenAddress, amount, userAddress) {
587
444
  try {
588
- const [vaultAddress, tokenAddress] = await Promise.all([
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;AAEzB;;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;gBAG5B,MAAM,EAAE,eAAe;IAUnC,sCAAsC;IAChC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB9B,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;IAWhC,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,sDAAsD;cACtC,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAgEjD,kDAAkD;IAClD,SAAS,CAAC,iBAAiB,IAAI,IAAI;IA2BnC,8BAA8B;IAC9B,SAAS,CAAC,kBAAkB,IAAI,IAAI;CAMrC"}
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"}