@0xmonaco/core 0.2.11 → 0.2.13

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 (34) hide show
  1. package/README.md +76 -5
  2. package/dist/api/fees/api.d.ts +71 -0
  3. package/dist/api/fees/api.d.ts.map +1 -0
  4. package/dist/api/fees/api.js +83 -0
  5. package/dist/api/fees/api.js.map +1 -0
  6. package/dist/api/fees/index.d.ts +7 -0
  7. package/dist/api/fees/index.d.ts.map +1 -0
  8. package/dist/api/fees/index.js +7 -0
  9. package/dist/api/fees/index.js.map +1 -0
  10. package/dist/api/index.d.ts +1 -0
  11. package/dist/api/index.d.ts.map +1 -1
  12. package/dist/api/index.js +1 -0
  13. package/dist/api/index.js.map +1 -1
  14. package/dist/api/websocket/base-ws-client.d.ts +24 -5
  15. package/dist/api/websocket/base-ws-client.d.ts.map +1 -1
  16. package/dist/api/websocket/base-ws-client.js +48 -17
  17. package/dist/api/websocket/base-ws-client.js.map +1 -1
  18. package/dist/api/websocket/clients/ohlcv-ws-client.d.ts +6 -1
  19. package/dist/api/websocket/clients/ohlcv-ws-client.d.ts.map +1 -1
  20. package/dist/api/websocket/clients/ohlcv-ws-client.js +6 -1
  21. package/dist/api/websocket/clients/ohlcv-ws-client.js.map +1 -1
  22. package/dist/api/websocket/clients/orderbook-ws-client.d.ts +6 -1
  23. package/dist/api/websocket/clients/orderbook-ws-client.d.ts.map +1 -1
  24. package/dist/api/websocket/clients/orderbook-ws-client.js +6 -1
  25. package/dist/api/websocket/clients/orderbook-ws-client.js.map +1 -1
  26. package/dist/api/websocket/clients/orders-ws-client.d.ts +15 -4
  27. package/dist/api/websocket/clients/orders-ws-client.d.ts.map +1 -1
  28. package/dist/api/websocket/clients/orders-ws-client.js +33 -16
  29. package/dist/api/websocket/clients/orders-ws-client.js.map +1 -1
  30. package/dist/sdk.d.ts +18 -6
  31. package/dist/sdk.d.ts.map +1 -1
  32. package/dist/sdk.js +34 -5
  33. package/dist/sdk.js.map +1 -1
  34. package/package.json +2 -2
package/README.md CHANGED
@@ -140,18 +140,24 @@ const monaco = new MonacoSDK({
140
140
 
141
141
  // Authentication
142
142
  async function authExample() {
143
- // Login with client ID
144
- const authState = await monaco.login("your-client-id");
143
+ // Login with client ID and auto-connect authenticated WebSocket channels (Orders)
144
+ const authState = await monaco.login("your-client-id", { connectWebSocket: true });
145
145
  console.log("Authenticated:", authState.user);
146
146
  console.log("Tokens:", {
147
147
  accessToken: authState.accessToken,
148
148
  refreshToken: authState.refreshToken, // Use this for revokeToken()
149
149
  });
150
150
 
151
+ // Authenticated WebSocket channels are now connected - start receiving real-time updates
152
+ // Currently this includes: Orders (personal order updates)
153
+ monaco.websocket.orders.subscribeToOrderEvents("BTC/USDC", "SPOT", (event) => {
154
+ console.log("Order event:", event.eventType);
155
+ });
156
+
151
157
  // Check authentication status
152
158
  console.log("Is authenticated:", monaco.isAuthenticated());
153
159
 
154
- // Logout (revokes the refresh token)
160
+ // Logout (revokes the refresh token and disconnects authenticated WebSockets)
155
161
  await monaco.logout();
156
162
 
157
163
  // Or manually revoke the token
@@ -270,6 +276,7 @@ class MonacoSDK {
270
276
  readonly websocket: {
271
277
  orders: OrdersWebSocketClient;
272
278
  ohlcv: OHLCVWebSocketClient;
279
+ orderbook: OrderbookWebSocketClient;
273
280
  };
274
281
  readonly walletClient: WalletClient;
275
282
  readonly publicClient: PublicClient;
@@ -277,7 +284,7 @@ class MonacoSDK {
277
284
  constructor(config: SDKConfig);
278
285
 
279
286
  // Authentication
280
- login(clientId: string): Promise<AuthState>;
287
+ login(clientId: string, options?: { connectWebSocket?: boolean }): Promise<AuthState>;
281
288
  logout(): Promise<void>;
282
289
  refreshAuth(): Promise<AuthState>;
283
290
  getAuthState(): AuthState | undefined;
@@ -335,7 +342,9 @@ await sdk.logout(); // Automatically calls revokeToken internally
335
342
  ```
336
343
 
337
344
  **Token Management Methods:**
338
- - `login(clientId)` - Authenticate and get tokens
345
+ - `login(clientId, options?)` - Authenticate and get tokens
346
+ - `clientId`: Your application's client ID
347
+ - `options.connectWebSocket`: (optional) Auto-connect all authenticated WebSocket channels after login (default: `false`)
339
348
  - `logout()` - Revoke token and clear state
340
349
  - `refreshAuth()` - Refresh the access token using the stored refresh token
341
350
  - `isAuthenticated()` - Check if user is authenticated
@@ -421,6 +430,66 @@ interface MarketAPI extends BaseAPI {
421
430
  }
422
431
  ```
423
432
 
433
+ ### WebSocket Authentication
434
+
435
+ The SDK provides three WebSocket clients with different authentication requirements:
436
+
437
+ #### Public WebSockets (OHLCV and Orderbook)
438
+
439
+ No authentication required. Provide public market data. You always connect manually:
440
+
441
+ ```typescript
442
+ // Step 1: Establish WebSocket connection (no authentication needed)
443
+ await monaco.websocket.ohlcv.connect();
444
+ await monaco.websocket.orderbook.connect();
445
+
446
+ // Step 2: Subscribe to public market data
447
+ monaco.websocket.ohlcv.subscribeToOHLCV("BTC/USDC", "SPOT", "1m", (event) => {
448
+ console.log("OHLCV data:", event.candlestick);
449
+ });
450
+
451
+ monaco.websocket.orderbook.subscribeToOrderbookEvents("BTC/USDC", "SPOT", (event) => {
452
+ console.log("Orderbook update:", event.bids.length, "bids");
453
+ });
454
+ ```
455
+
456
+ #### Authenticated WebSockets (Orders)
457
+
458
+ Requires JWT authentication for personal order updates. You can either auto-connect during login or connect manually:
459
+
460
+ **Option 1: Auto-connect (recommended for authenticated channels)**
461
+ ```typescript
462
+ // Login and auto-connect all authenticated WebSocket channels
463
+ // Currently includes: Orders (personal order updates)
464
+ await monaco.login(clientId, { connectWebSocket: true });
465
+
466
+ // Subscribe to personal order events (already connected)
467
+ monaco.websocket.orders.subscribeToOrderEvents("BTC/USDC", "SPOT", (event) => {
468
+ console.log("Personal order event:", event.eventType);
469
+ });
470
+ ```
471
+
472
+ **Option 2: Manual connection (required for public channels, optional for authenticated)**
473
+ ```typescript
474
+ // Public channels like OHLCV always require manual connection (no auth needed)
475
+ await monaco.websocket.ohlcv.connect();
476
+
477
+ monaco.websocket.ohlcv.subscribeToOHLCV("BTC/USDC", "SPOT", "1m", (event) => {
478
+ console.log("OHLCV data:", event.candlestick);
479
+ });
480
+
481
+ // For authenticated channels, you can also connect manually for more control
482
+ await monaco.login(clientId);
483
+ await monaco.websocket.orders.connect();
484
+ monaco.websocket.orders.subscribeToOrderEvents("BTC/USDC", "SPOT", (event) => {
485
+ console.log("Personal order event:", event.eventType);
486
+ });
487
+ ```
488
+
489
+ **Note:**
490
+ - The `connectWebSocket: true` option automatically connects all authenticated WebSocket channels (currently Orders).
491
+ - Public WebSocket clients (OHLCV, Orderbook) always require calling `connect()` explicitly as they don't require authentication.
492
+
424
493
  ### Error Handling
425
494
 
426
495
  The SDK uses structured error classes for comprehensive error handling:
@@ -447,11 +516,13 @@ try {
447
516
  ```
448
517
 
449
518
  **Error Types:**
519
+ - `MonacoCoreError`: Base error class for all SDK errors
450
520
  - `APIError`: API request failures and communication errors
451
521
  - `ContractError`: Smart contract operation errors
452
522
  - `TransactionError`: Blockchain transaction errors
453
523
  - `OrderError`: Trading order specific errors
454
524
  - `InvalidConfigError`: Configuration validation errors
525
+ - `InvalidStateError`: Invalid state or operation errors
455
526
 
456
527
  ## Development
457
528
 
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Fees API Implementation
3
+ *
4
+ * Handles fee simulation and calculation operations.
5
+ * All operations use JWT authentication and go through the API Gateway.
6
+ *
7
+ * This class provides a complete interface for fee-related operations on the Monaco protocol,
8
+ * including simulating fees before placing orders.
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * const feesAPI = new FeesAPIImpl(apiUrl);
13
+ * feesAPI.setAccessToken(jwtToken);
14
+ *
15
+ * // Simulate fees for an order
16
+ * const feeDetails = await feesAPI.simulateFees({
17
+ * trading_pair_id: "123e4567-e89b-12d3-a456-426614174000",
18
+ * side: "BUY",
19
+ * price: "40000.00",
20
+ * quantity: "0.5"
21
+ * });
22
+ * ```
23
+ */
24
+ import type { FeesAPI, SimulateFeeParams, SimulateFeeResponse } from "@0xmonaco/types";
25
+ import { BaseAPI } from "../base";
26
+ export declare class FeesAPIImpl extends BaseAPI implements FeesAPI {
27
+ /**
28
+ * Simulate fees for an order before placing it.
29
+ *
30
+ * Returns exact fees for that specific order including Monaco protocol fees,
31
+ * application fees, and total amounts the taker must pay or maker will receive.
32
+ *
33
+ * @param params - Parameters for fee simulation
34
+ * @param params.trading_pair_id - The trading pair UUID
35
+ * @param params.side - The order side ("BUY" or "SELL")
36
+ * @param params.price - The price per unit as string
37
+ * @param params.quantity - The quantity to trade as string
38
+ * @returns Promise resolving to SimulateFeeResponse with fee breakdown
39
+ *
40
+ * @example
41
+ * ```typescript
42
+ * // Simulate fees for a buy order
43
+ * const buyFees = await feesAPI.simulateFees({
44
+ * trading_pair_id: "123e4567-e89b-12d3-a456-426614174000",
45
+ * side: "BUY",
46
+ * price: "40000.00",
47
+ * quantity: "0.5"
48
+ * });
49
+ *
50
+ * console.log(`Notional value: ${buyFees.notional}`);
51
+ * console.log(`Monaco taker fee: ${buyFees.monaco_taker_fee}`);
52
+ * console.log(`Application taker fee: ${buyFees.application_taker_fee}`);
53
+ * console.log(`Total taker fees: ${buyFees.total_taker_fees}`);
54
+ * console.log(`Total payment required: ${buyFees.taker_total_payment}`);
55
+ * console.log(`Lock amount for BUY: ${buyFees.buy_order_lock_amount}`);
56
+ *
57
+ * // Simulate fees for a sell order
58
+ * const sellFees = await feesAPI.simulateFees({
59
+ * trading_pair_id: "123e4567-e89b-12d3-a456-426614174000",
60
+ * side: "SELL",
61
+ * price: "40000.00",
62
+ * quantity: "0.5"
63
+ * });
64
+ *
65
+ * console.log(`Maker rebate: ${sellFees.monaco_maker_rebate}`);
66
+ * console.log(`Maker total receipt: ${sellFees.maker_total_receipt}`);
67
+ * ```
68
+ */
69
+ simulateFees(params: SimulateFeeParams): Promise<SimulateFeeResponse>;
70
+ }
71
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/api/fees/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEvF,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,qBAAa,WAAY,SAAQ,OAAQ,YAAW,OAAO;IACzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;IACG,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAgB5E"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Fees API Implementation
3
+ *
4
+ * Handles fee simulation and calculation operations.
5
+ * All operations use JWT authentication and go through the API Gateway.
6
+ *
7
+ * This class provides a complete interface for fee-related operations on the Monaco protocol,
8
+ * including simulating fees before placing orders.
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * const feesAPI = new FeesAPIImpl(apiUrl);
13
+ * feesAPI.setAccessToken(jwtToken);
14
+ *
15
+ * // Simulate fees for an order
16
+ * const feeDetails = await feesAPI.simulateFees({
17
+ * trading_pair_id: "123e4567-e89b-12d3-a456-426614174000",
18
+ * side: "BUY",
19
+ * price: "40000.00",
20
+ * quantity: "0.5"
21
+ * });
22
+ * ```
23
+ */
24
+ import { SimulateFeeParamsSchema } from "@0xmonaco/types";
25
+ import { BaseAPI } from "../base";
26
+ export class FeesAPIImpl extends BaseAPI {
27
+ /**
28
+ * Simulate fees for an order before placing it.
29
+ *
30
+ * Returns exact fees for that specific order including Monaco protocol fees,
31
+ * application fees, and total amounts the taker must pay or maker will receive.
32
+ *
33
+ * @param params - Parameters for fee simulation
34
+ * @param params.trading_pair_id - The trading pair UUID
35
+ * @param params.side - The order side ("BUY" or "SELL")
36
+ * @param params.price - The price per unit as string
37
+ * @param params.quantity - The quantity to trade as string
38
+ * @returns Promise resolving to SimulateFeeResponse with fee breakdown
39
+ *
40
+ * @example
41
+ * ```typescript
42
+ * // Simulate fees for a buy order
43
+ * const buyFees = await feesAPI.simulateFees({
44
+ * trading_pair_id: "123e4567-e89b-12d3-a456-426614174000",
45
+ * side: "BUY",
46
+ * price: "40000.00",
47
+ * quantity: "0.5"
48
+ * });
49
+ *
50
+ * console.log(`Notional value: ${buyFees.notional}`);
51
+ * console.log(`Monaco taker fee: ${buyFees.monaco_taker_fee}`);
52
+ * console.log(`Application taker fee: ${buyFees.application_taker_fee}`);
53
+ * console.log(`Total taker fees: ${buyFees.total_taker_fees}`);
54
+ * console.log(`Total payment required: ${buyFees.taker_total_payment}`);
55
+ * console.log(`Lock amount for BUY: ${buyFees.buy_order_lock_amount}`);
56
+ *
57
+ * // Simulate fees for a sell order
58
+ * const sellFees = await feesAPI.simulateFees({
59
+ * trading_pair_id: "123e4567-e89b-12d3-a456-426614174000",
60
+ * side: "SELL",
61
+ * price: "40000.00",
62
+ * quantity: "0.5"
63
+ * });
64
+ *
65
+ * console.log(`Maker rebate: ${sellFees.monaco_maker_rebate}`);
66
+ * console.log(`Maker total receipt: ${sellFees.maker_total_receipt}`);
67
+ * ```
68
+ */
69
+ async simulateFees(params) {
70
+ // Validate parameters using Zod schema
71
+ const validatedParams = SimulateFeeParamsSchema.parse(params);
72
+ const searchParams = new URLSearchParams();
73
+ searchParams.append("trading_pair_id", validatedParams.trading_pair_id);
74
+ searchParams.append("side", validatedParams.side);
75
+ searchParams.append("price", validatedParams.price);
76
+ searchParams.append("quantity", validatedParams.quantity);
77
+ const endpoint = `/api/v1/fees/simulate?${searchParams.toString()}`;
78
+ return await this.makeAuthenticatedRequest(endpoint, {
79
+ method: "GET",
80
+ });
81
+ }
82
+ }
83
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/api/fees/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,OAAO,WAAY,SAAQ,OAAO;IACtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;IACH,KAAK,CAAC,YAAY,CAAC,MAAyB;QAC1C,uCAAuC;QACvC,MAAM,eAAe,GAAG,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAE9D,MAAM,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;QAC3C,YAAY,CAAC,MAAM,CAAC,iBAAiB,EAAE,eAAe,CAAC,eAAe,CAAC,CAAC;QACxE,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;QAClD,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC;QACpD,YAAY,CAAC,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;QAE1D,MAAM,QAAQ,GAAG,yBAAyB,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC;QAEpE,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAsB,QAAQ,EAAE;YACxE,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Fees API Module
3
+ *
4
+ * Exports fees API implementation.
5
+ */
6
+ export { FeesAPIImpl } from "./api";
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/fees/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Fees API Module
3
+ *
4
+ * Exports fees API implementation.
5
+ */
6
+ export { FeesAPIImpl } from "./api";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/fees/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC"}
@@ -5,6 +5,7 @@
5
5
  */
6
6
  export * from "./applications";
7
7
  export * from "./base";
8
+ export * from "./fees";
8
9
  export * from "./market";
9
10
  export * from "./profile";
10
11
  export * from "./trading";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
package/dist/api/index.js CHANGED
@@ -5,6 +5,7 @@
5
5
  */
6
6
  export * from "./applications";
7
7
  export * from "./base";
8
+ export * from "./fees";
8
9
  export * from "./market";
9
10
  export * from "./profile";
10
11
  export * from "./trading";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
@@ -6,11 +6,17 @@
6
6
  * - Heartbeat/ping-pong for connection health
7
7
  * - Exponential backoff reconnection
8
8
  * - Event-driven error handling
9
- * - JWT authentication via query parameters
9
+ * - Optional JWT authentication via query parameters (only added if accessToken is provided)
10
+ *
11
+ * Supports both public channels (no authentication) and private channels (requires JWT).
10
12
  */
11
- import type { BaseWebSocketClient, ConnectionStatus, WebSocketChannel, WebSocketConfig } from "@0xmonaco/types";
13
+ import { type BaseWebSocketClient, type ConnectionStatus, type WebSocketChannel, type WebSocketConfig } from "@0xmonaco/types";
12
14
  /**
13
15
  * Base WebSocket client implementation for Monaco Protocol
16
+ *
17
+ * This client supports both authenticated and unauthenticated connections.
18
+ * If an accessToken is provided in the config, it will be included as a query parameter.
19
+ * If no accessToken is provided, the connection will be made without authentication (public channels).
14
20
  */
15
21
  export declare class BaseWebSocketClientImpl implements BaseWebSocketClient {
16
22
  protected static readonly CONNECTION_TIMEOUT = 10000;
@@ -27,7 +33,11 @@ export declare class BaseWebSocketClientImpl implements BaseWebSocketClient {
27
33
  protected heartbeatInterval: NodeJS.Timeout | null;
28
34
  protected lastPong: number;
29
35
  constructor(config: WebSocketConfig);
30
- /** Connect to the WebSocket server */
36
+ /**
37
+ * Connect to the WebSocket server.
38
+ * For public channels (OHLCV, Orderbook), authentication is optional.
39
+ * For private channels (Orders), authentication is required - call setAccessToken() first.
40
+ */
31
41
  connect(): Promise<void>;
32
42
  /** Disconnect from the WebSocket server */
33
43
  disconnect(): void;
@@ -37,7 +47,11 @@ export declare class BaseWebSocketClientImpl implements BaseWebSocketClient {
37
47
  isConnected(): boolean;
38
48
  /** Set the access token for authentication */
39
49
  setAccessToken(token: string): void;
40
- /** Send message (queues if not connected/authenticated) */
50
+ /**
51
+ * Send message (queues if not connected).
52
+ * Messages are queued if the WebSocket is not in OPEN state, regardless of authentication.
53
+ * This allows both authenticated and public channels to queue messages until connected.
54
+ */
41
55
  send(data: any): void;
42
56
  /** Flush all queued messages */
43
57
  protected flushMessageQueue(): void;
@@ -56,7 +70,12 @@ export declare class BaseWebSocketClientImpl implements BaseWebSocketClient {
56
70
  * @returns True if the message is a valid event with the specified channel type
57
71
  */
58
72
  protected isEventMessage(message: any, channelType: WebSocketChannel): boolean;
59
- /** Create WebSocket connection with event handlers */
73
+ /**
74
+ * Create WebSocket connection with event handlers.
75
+ *
76
+ * If accessToken is provided in config, it will be appended as a query parameter.
77
+ * If no accessToken is provided, connection will be made without authentication (public channels).
78
+ */
60
79
  protected createConnection(): Promise<void>;
61
80
  /** Schedule reconnect with exponential backoff */
62
81
  protected scheduleReconnect(): void;
@@ -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,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEhH;;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;IAuB9B,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;IAO3C;;;;;OAKG;IACH,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,gBAAgB,GAAG,OAAO;IAe9E,sDAAsD;cACtC,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IA6DjD,kDAAkD;IAClD,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAuBnC,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;;;;;;;;;;;GAWG;AACH,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EAErB,MAAM,iBAAiB,CAAC;AAEzB;;;;;;GAMG;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,CAAgC;IAG5E,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;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAuB9B,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;;;;OAIG;IACH,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;IAO3C;;;;;OAKG;IACH,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,gBAAgB,GAAG,OAAO;IAe9E;;;;;OAKG;cACa,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IA8DjD,kDAAkD;IAClD,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAuBnC,8BAA8B;IAC9B,SAAS,CAAC,kBAAkB,IAAI,IAAI;CAMrC"}
@@ -1,11 +1,28 @@
1
+ /**
2
+ * Base WebSocket Client
3
+ *
4
+ * Production-ready WebSocket client with:
5
+ * - Message queuing and retry logic
6
+ * - Heartbeat/ping-pong for connection health
7
+ * - Exponential backoff reconnection
8
+ * - Event-driven error handling
9
+ * - Optional JWT authentication via query parameters (only added if accessToken is provided)
10
+ *
11
+ * Supports both public channels (no authentication) and private channels (requires JWT).
12
+ */
13
+ import { WebSocketStatus, } from "@0xmonaco/types";
1
14
  /**
2
15
  * Base WebSocket client implementation for Monaco Protocol
16
+ *
17
+ * This client supports both authenticated and unauthenticated connections.
18
+ * If an accessToken is provided in the config, it will be included as a query parameter.
19
+ * If no accessToken is provided, the connection will be made without authentication (public channels).
3
20
  */
4
21
  export class BaseWebSocketClientImpl {
5
22
  constructor(config) {
6
23
  // Core WebSocket properties
7
24
  this.ws = null;
8
- this.connectionStatus = "disconnected";
25
+ this.connectionStatus = WebSocketStatus.Disconnected;
9
26
  // Reconnection management
10
27
  this.reconnectAttempts = 0;
11
28
  this.reconnectTimer = null;
@@ -23,20 +40,24 @@ export class BaseWebSocketClientImpl {
23
40
  ...config,
24
41
  };
25
42
  }
26
- /** Connect to the WebSocket server */
43
+ /**
44
+ * Connect to the WebSocket server.
45
+ * For public channels (OHLCV, Orderbook), authentication is optional.
46
+ * For private channels (Orders), authentication is required - call setAccessToken() first.
47
+ */
27
48
  async connect() {
28
49
  try {
29
50
  if (this.ws) {
30
51
  this.ws.close(1000, "Reconnecting");
31
52
  this.ws = null;
32
53
  }
33
- if (this.connectionStatus === "connecting" || this.connectionStatus === "connected") {
54
+ if (this.connectionStatus === WebSocketStatus.Connecting || this.connectionStatus === WebSocketStatus.Connected) {
34
55
  return;
35
56
  }
36
- if (!this.config.accessToken?.trim()) {
37
- throw new Error("JWT access token is required for WebSocket connection. Please call sdk.login() first.");
38
- }
39
- this.connectionStatus = "connecting";
57
+ // No validation here - let each specific client decide if auth is required
58
+ // Public channels (OHLCV, Orderbook) work without authentication
59
+ // Private channels (Orders) should validate in their own implementation if needed
60
+ this.connectionStatus = WebSocketStatus.Connecting;
40
61
  await this.createConnection();
41
62
  }
42
63
  catch (error) {
@@ -53,7 +74,7 @@ export class BaseWebSocketClientImpl {
53
74
  this.ws.close();
54
75
  this.ws = null;
55
76
  }
56
- this.connectionStatus = "disconnected";
77
+ this.connectionStatus = WebSocketStatus.Disconnected;
57
78
  this.isAuthenticated = false;
58
79
  }
59
80
  /** Get current connection status */
@@ -68,9 +89,13 @@ export class BaseWebSocketClientImpl {
68
89
  setAccessToken(token) {
69
90
  this.config.accessToken = token;
70
91
  }
71
- /** Send message (queues if not connected/authenticated) */
92
+ /**
93
+ * Send message (queues if not connected).
94
+ * Messages are queued if the WebSocket is not in OPEN state, regardless of authentication.
95
+ * This allows both authenticated and public channels to queue messages until connected.
96
+ */
72
97
  send(data) {
73
- if (!this.isAuthenticated || this.ws?.readyState !== WebSocket.OPEN) {
98
+ if (this.ws?.readyState !== WebSocket.OPEN) {
74
99
  this.messageQueue.push(data);
75
100
  return;
76
101
  }
@@ -102,7 +127,7 @@ export class BaseWebSocketClientImpl {
102
127
  }
103
128
  /** Handle connection errors with cleanup */
104
129
  handleConnectionError(error) {
105
- this.connectionStatus = "disconnected";
130
+ this.connectionStatus = WebSocketStatus.Disconnected;
106
131
  this.isAuthenticated = false;
107
132
  this.stopHeartbeat();
108
133
  console.warn("WebSocket connection error:", error?.message || error);
@@ -131,11 +156,17 @@ export class BaseWebSocketClientImpl {
131
156
  message.data &&
132
157
  typeof message.data === "object");
133
158
  }
134
- /** Create WebSocket connection with event handlers */
159
+ /**
160
+ * Create WebSocket connection with event handlers.
161
+ *
162
+ * If accessToken is provided in config, it will be appended as a query parameter.
163
+ * If no accessToken is provided, connection will be made without authentication (public channels).
164
+ */
135
165
  async createConnection() {
136
166
  return new Promise((resolve, reject) => {
137
167
  try {
138
168
  const url = new URL(this.config.wsUrl);
169
+ // Only add authentication token if provided (optional for public channels)
139
170
  if (this.config.accessToken) {
140
171
  url.searchParams.set("token", this.config.accessToken);
141
172
  }
@@ -148,9 +179,9 @@ export class BaseWebSocketClientImpl {
148
179
  }, BaseWebSocketClientImpl.CONNECTION_TIMEOUT);
149
180
  this.ws.onopen = () => {
150
181
  clearTimeout(connectionTimeout);
151
- this.connectionStatus = "connected";
182
+ this.connectionStatus = WebSocketStatus.Connected;
152
183
  this.reconnectAttempts = 0;
153
- this.isAuthenticated = true;
184
+ this.isAuthenticated = !!this.config.accessToken;
154
185
  this.lastPong = Date.now();
155
186
  this.startHeartbeat();
156
187
  this.flushMessageQueue();
@@ -167,7 +198,7 @@ export class BaseWebSocketClientImpl {
167
198
  };
168
199
  this.ws.onclose = (event) => {
169
200
  clearTimeout(connectionTimeout);
170
- this.connectionStatus = "disconnected";
201
+ this.connectionStatus = WebSocketStatus.Disconnected;
171
202
  this.isAuthenticated = false;
172
203
  this.stopHeartbeat();
173
204
  if (this.config.autoReconnect && this.reconnectAttempts < (this.config.maxReconnectAttempts || 5) && event.code !== 1000) {
@@ -182,14 +213,14 @@ export class BaseWebSocketClientImpl {
182
213
  };
183
214
  }
184
215
  catch (error) {
185
- this.connectionStatus = "disconnected";
216
+ this.connectionStatus = WebSocketStatus.Disconnected;
186
217
  reject(error);
187
218
  }
188
219
  });
189
220
  }
190
221
  /** Schedule reconnect with exponential backoff */
191
222
  scheduleReconnect() {
192
- this.connectionStatus = "reconnecting";
223
+ this.connectionStatus = WebSocketStatus.Reconnecting;
193
224
  this.reconnectAttempts++;
194
225
  const baseDelay = this.config.reconnectDelay || 5000;
195
226
  const exponentialDelay = Math.min(baseDelay * 2 ** (this.reconnectAttempts - 1), BaseWebSocketClientImpl.MAX_RECONNECT_DELAY);
@@ -1 +1 @@
1
- {"version":3,"file":"base-ws-client.js","sourceRoot":"","sources":["../../../src/api/websocket/base-ws-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-ws-client.js","sourceRoot":"","sources":["../../../src/api/websocket/base-ws-client.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * OHLCV WebSocket Client Implementation
3
3
  *
4
- * Specialized WebSocket client for OHLCV (Open, High, Low, Close, Volume) candlestick data events.
4
+ * PUBLIC WebSocket client for OHLCV (Open, High, Low, Close, Volume) candlestick data events.
5
+ * No authentication required - provides public market candlestick data.
5
6
  * Extends the base WebSocket client with OHLCV-specific functionality.
6
7
  */
7
8
  import { OHLCVWebSocketClient, WebSocketConfig, TradingMode, OHLCVEvent, Interval } from "@0xmonaco/types";
@@ -14,6 +15,7 @@ export declare class OHLCVWebSocketClientImpl extends BaseWebSocketClientImpl im
14
15
  constructor(config: WebSocketConfig);
15
16
  /**
16
17
  * Subscribe to OHLCV (candlestick) updates for a specific trading pair, mode, and interval.
18
+ * No authentication required - provides public market data.
17
19
  *
18
20
  * @param symbol - Trading pair symbol (e.g., "BTC/USDC")
19
21
  * @param tradingMode - Trading mode (TradingMode.SPOT or TradingMode.MARGIN)
@@ -22,6 +24,9 @@ export declare class OHLCVWebSocketClientImpl extends BaseWebSocketClientImpl im
22
24
  *
23
25
  * @example
24
26
  * ```typescript
27
+ * // No authentication required
28
+ * await ohlcvWS.connect();
29
+ *
25
30
  * ohlcvWS.subscribeToOHLCV("BTC/USDC", TradingMode.SPOT, "1m", (event) => {
26
31
  * console.log("New OHLCV data:", event.candlestick.o, event.candlestick.c);
27
32
  * });
@@ -1 +1 @@
1
- {"version":3,"file":"ohlcv-ws-client.d.ts","sourceRoot":"","sources":["../../../../src/api/websocket/clients/ohlcv-ws-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,oBAAoB,EACpB,eAAe,EAEf,WAAW,EACX,UAAU,EACV,QAAQ,EACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D;;GAEG;AACH,qBAAa,wBACX,SAAQ,uBACR,YAAW,oBAAoB;IAG/B,OAAO,CAAC,aAAa,CAAkD;gBAE3D,MAAM,EAAE,eAAe;IAInC;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CACd,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GACpC,IAAI;IAaP;;;;;;;;;;;OAWG;IACH,oBAAoB,CAClB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,GACjB,IAAI;IAaP,iEAAiE;IACjE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAS3C,0DAA0D;IAC1D,OAAO,CAAC,YAAY;IAIpB,oDAAoD;IACpD,OAAO,CAAC,gBAAgB;IAkDxB,4CAA4C;IAC5C,SAAS,CAAC,OAAO,IAAI,IAAI;CAG1B"}
1
+ {"version":3,"file":"ohlcv-ws-client.d.ts","sourceRoot":"","sources":["../../../../src/api/websocket/clients/ohlcv-ws-client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EACL,oBAAoB,EACpB,eAAe,EAEf,WAAW,EACX,UAAU,EACV,QAAQ,EACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D;;GAEG;AACH,qBAAa,wBACX,SAAQ,uBACR,YAAW,oBAAoB;IAG/B,OAAO,CAAC,aAAa,CAAkD;gBAE3D,MAAM,EAAE,eAAe;IAInC;;;;;;;;;;;;;;;;;;OAkBG;IACH,gBAAgB,CACd,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GACpC,IAAI;IAaP;;;;;;;;;;;OAWG;IACH,oBAAoB,CAClB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,GACjB,IAAI;IAaP,iEAAiE;IACjE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAS3C,0DAA0D;IAC1D,OAAO,CAAC,YAAY;IAIpB,oDAAoD;IACpD,OAAO,CAAC,gBAAgB;IAkDxB,4CAA4C;IAC5C,SAAS,CAAC,OAAO,IAAI,IAAI;CAG1B"}
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * OHLCV WebSocket Client Implementation
3
3
  *
4
- * Specialized WebSocket client for OHLCV (Open, High, Low, Close, Volume) candlestick data events.
4
+ * PUBLIC WebSocket client for OHLCV (Open, High, Low, Close, Volume) candlestick data events.
5
+ * No authentication required - provides public market candlestick data.
5
6
  * Extends the base WebSocket client with OHLCV-specific functionality.
6
7
  */
7
8
  import { WebSocketChannel, } from "@0xmonaco/types";
@@ -17,6 +18,7 @@ export class OHLCVWebSocketClientImpl extends BaseWebSocketClientImpl {
17
18
  }
18
19
  /**
19
20
  * Subscribe to OHLCV (candlestick) updates for a specific trading pair, mode, and interval.
21
+ * No authentication required - provides public market data.
20
22
  *
21
23
  * @param symbol - Trading pair symbol (e.g., "BTC/USDC")
22
24
  * @param tradingMode - Trading mode (TradingMode.SPOT or TradingMode.MARGIN)
@@ -25,6 +27,9 @@ export class OHLCVWebSocketClientImpl extends BaseWebSocketClientImpl {
25
27
  *
26
28
  * @example
27
29
  * ```typescript
30
+ * // No authentication required
31
+ * await ohlcvWS.connect();
32
+ *
28
33
  * ohlcvWS.subscribeToOHLCV("BTC/USDC", TradingMode.SPOT, "1m", (event) => {
29
34
  * console.log("New OHLCV data:", event.candlestick.o, event.candlestick.c);
30
35
  * });
@@ -1 +1 @@
1
- {"version":3,"file":"ohlcv-ws-client.js","sourceRoot":"","sources":["../../../../src/api/websocket/clients/ohlcv-ws-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ohlcv-ws-client.js","sourceRoot":"","sources":["../../../../src/api/websocket/clients/ohlcv-ws-client.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * Orderbook WebSocket Client Implementation
3
3
  *
4
- * Specialized WebSocket client for orderbook-related events and operations.
4
+ * PUBLIC WebSocket client for orderbook-related events and operations.
5
+ * No authentication required - provides public orderbook market data.
5
6
  * Extends the base WebSocket client with orderbook-specific functionality.
6
7
  */
7
8
  import { OrderbookWebSocketClient, WebSocketConfig, TradingMode, OrderbookEvent } from "@0xmonaco/types";
@@ -14,6 +15,7 @@ export declare class OrderbookWebSocketClientImpl extends BaseWebSocketClientImp
14
15
  constructor(config: WebSocketConfig);
15
16
  /**
16
17
  * Subscribe to orderbook events for a specific market and trading mode.
18
+ * No authentication required - provides public orderbook data.
17
19
  *
18
20
  * @param market - Trading pair symbol (e.g., "BTC/USDC")
19
21
  * @param tradingMode - Trading mode (TradingMode.SPOT or TradingMode.MARGIN)
@@ -21,6 +23,9 @@ export declare class OrderbookWebSocketClientImpl extends BaseWebSocketClientImp
21
23
  *
22
24
  * @example
23
25
  * ```typescript
26
+ * // No authentication required
27
+ * await orderbookWS.connect();
28
+ *
24
29
  * orderbookWS.subscribeToOrderbookEvents("BTC/USDC", TradingMode.SPOT, (event) => {
25
30
  * console.log("Orderbook update:", event.bids.length, "bids", event.asks.length, "asks");
26
31
  * });
@@ -1 +1 @@
1
- {"version":3,"file":"orderbook-ws-client.d.ts","sourceRoot":"","sources":["../../../../src/api/websocket/clients/orderbook-ws-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAoB,WAAW,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC3H,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,uBAAwB,YAAW,wBAAwB;IAC3G,OAAO,CAAC,iBAAiB,CAA2D;gBAExE,MAAM,EAAE,eAAe;IAInC;;;;;;;;;;;;;OAaG;IACH,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI;IAarH;;;;;OAKG;IACH,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI;IAa9E,uEAAuE;IACvE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAU3C,8DAA8D;IAC9D,OAAO,CAAC,gBAAgB;IAIxB,wDAAwD;IACxD,OAAO,CAAC,oBAAoB;IA4D5B,4CAA4C;IAC5C,SAAS,CAAC,OAAO,IAAI,IAAI;CAG1B"}
1
+ {"version":3,"file":"orderbook-ws-client.d.ts","sourceRoot":"","sources":["../../../../src/api/websocket/clients/orderbook-ws-client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAoB,WAAW,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC3H,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,uBAAwB,YAAW,wBAAwB;IAC3G,OAAO,CAAC,iBAAiB,CAA2D;gBAExE,MAAM,EAAE,eAAe;IAInC;;;;;;;;;;;;;;;;;OAiBG;IACH,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI;IAarH;;;;;OAKG;IACH,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI;IAa9E,uEAAuE;IACvE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAU3C,8DAA8D;IAC9D,OAAO,CAAC,gBAAgB;IAIxB,wDAAwD;IACxD,OAAO,CAAC,oBAAoB;IA4D5B,4CAA4C;IAC5C,SAAS,CAAC,OAAO,IAAI,IAAI;CAG1B"}
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * Orderbook WebSocket Client Implementation
3
3
  *
4
- * Specialized WebSocket client for orderbook-related events and operations.
4
+ * PUBLIC WebSocket client for orderbook-related events and operations.
5
+ * No authentication required - provides public orderbook market data.
5
6
  * Extends the base WebSocket client with orderbook-specific functionality.
6
7
  */
7
8
  import { WebSocketChannel } from "@0xmonaco/types";
@@ -16,6 +17,7 @@ export class OrderbookWebSocketClientImpl extends BaseWebSocketClientImpl {
16
17
  }
17
18
  /**
18
19
  * Subscribe to orderbook events for a specific market and trading mode.
20
+ * No authentication required - provides public orderbook data.
19
21
  *
20
22
  * @param market - Trading pair symbol (e.g., "BTC/USDC")
21
23
  * @param tradingMode - Trading mode (TradingMode.SPOT or TradingMode.MARGIN)
@@ -23,6 +25,9 @@ export class OrderbookWebSocketClientImpl extends BaseWebSocketClientImpl {
23
25
  *
24
26
  * @example
25
27
  * ```typescript
28
+ * // No authentication required
29
+ * await orderbookWS.connect();
30
+ *
26
31
  * orderbookWS.subscribeToOrderbookEvents("BTC/USDC", TradingMode.SPOT, (event) => {
27
32
  * console.log("Orderbook update:", event.bids.length, "bids", event.asks.length, "asks");
28
33
  * });
@@ -1 +1 @@
1
- {"version":3,"file":"orderbook-ws-client.js","sourceRoot":"","sources":["../../../../src/api/websocket/clients/orderbook-ws-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orderbook-ws-client.js","sourceRoot":"","sources":["../../../../src/api/websocket/clients/orderbook-ws-client.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  /**
2
2
  * Orders WebSocket Client Implementation
3
3
  *
4
- * Specialized WebSocket client for order-related events and operations.
5
- * Extends the base WebSocket client with order-specific functionality.
4
+ * AUTHENTICATED WebSocket client for personal order-related events.
5
+ * Requires JWT authentication via access token.
6
+ * Shows user-specific order updates and events.
6
7
  */
7
8
  import { type OrderEvent, type OrdersWebSocketClient, type TradingMode, type WebSocketConfig } from "@0xmonaco/types";
8
9
  import { BaseWebSocketClientImpl } from "../base-ws-client";
@@ -13,7 +14,13 @@ export declare class OrdersWebSocketClientImpl extends BaseWebSocketClientImpl i
13
14
  private orderHandlers;
14
15
  constructor(config: WebSocketConfig);
15
16
  /**
16
- * Subscribe to order events for a specific market and trading mode.
17
+ * Override connect to enforce authentication requirement for Orders channel.
18
+ * Orders WebSocket requires JWT authentication for personal order updates.
19
+ */
20
+ connect(): Promise<void>;
21
+ /**
22
+ * Subscribe to personal order events for a specific market and trading mode.
23
+ * Requires authentication - call setAccessToken() before connecting.
17
24
  *
18
25
  * @param market - Trading pair symbol (e.g., "BTC/USDC")
19
26
  * @param tradingMode - Trading mode (TradingMode.SPOT or TradingMode.MARGIN)
@@ -21,8 +28,12 @@ export declare class OrdersWebSocketClientImpl extends BaseWebSocketClientImpl i
21
28
  *
22
29
  * @example
23
30
  * ```typescript
31
+ * // Set authentication token first
32
+ * ordersWS.setAccessToken(authState.accessToken);
33
+ * await ordersWS.connect();
34
+ *
24
35
  * ordersWS.subscribeToOrderEvents("BTC/USDC", TradingMode.SPOT, (event) => {
25
- * console.log("Order event:", event.eventType);
36
+ * console.log("Personal order event:", event.eventType);
26
37
  * });
27
38
  * ```
28
39
  */
@@ -1 +1 @@
1
- {"version":3,"file":"orders-ws-client.d.ts","sourceRoot":"","sources":["../../../../src/api/websocket/clients/orders-ws-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAEL,KAAK,UAAU,EAQf,KAAK,qBAAqB,EAC1B,KAAK,WAAW,EAEhB,KAAK,eAAe,EACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAyB5D;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,uBAAwB,YAAW,qBAAqB;IAErG,OAAO,CAAC,aAAa,CAAkD;gBAE3D,MAAM,EAAE,eAAe;IAInC;;;;;;;;;;;;;OAaG;IACH,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI;IAa7G;;;;;;;;;;OAUG;IACH,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI;IAa1E,iEAAiE;IACjE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAS3C,0DAA0D;IAC1D,OAAO,CAAC,YAAY;IAIpB,oDAAoD;IACpD,OAAO,CAAC,gBAAgB;IAuExB,4CAA4C;IAC5C,SAAS,CAAC,OAAO,IAAI,IAAI;CAG1B"}
1
+ {"version":3,"file":"orders-ws-client.d.ts","sourceRoot":"","sources":["../../../../src/api/websocket/clients/orders-ws-client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAEL,KAAK,UAAU,EAQf,KAAK,qBAAqB,EAC1B,KAAK,WAAW,EAEhB,KAAK,eAAe,EACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAyB5D;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,uBAAwB,YAAW,qBAAqB;IAErG,OAAO,CAAC,aAAa,CAAkD;gBAE3D,MAAM,EAAE,eAAe;IAInC;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAU9B;;;;;;;;;;;;;;;;;;OAkBG;IACH,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI;IAa7G;;;;;;;;;;OAUG;IACH,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI;IAa1E,iEAAiE;IACjE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAS3C,0DAA0D;IAC1D,OAAO,CAAC,YAAY;IAIpB,oDAAoD;IACpD,OAAO,CAAC,gBAAgB;IAuExB,4CAA4C;IAC5C,SAAS,CAAC,OAAO,IAAI,IAAI;CAG1B"}
@@ -1,8 +1,9 @@
1
1
  /**
2
2
  * Orders WebSocket Client Implementation
3
3
  *
4
- * Specialized WebSocket client for order-related events and operations.
5
- * Extends the base WebSocket client with order-specific functionality.
4
+ * AUTHENTICATED WebSocket client for personal order-related events.
5
+ * Requires JWT authentication via access token.
6
+ * Shows user-specific order updates and events.
6
7
  */
7
8
  import { WebSocketChannel, } from "@0xmonaco/types";
8
9
  import { BaseWebSocketClientImpl } from "../base-ws-client";
@@ -39,7 +40,19 @@ export class OrdersWebSocketClientImpl extends BaseWebSocketClientImpl {
39
40
  this.orderHandlers = new Map();
40
41
  }
41
42
  /**
42
- * Subscribe to order events for a specific market and trading mode.
43
+ * Override connect to enforce authentication requirement for Orders channel.
44
+ * Orders WebSocket requires JWT authentication for personal order updates.
45
+ */
46
+ async connect() {
47
+ if (!this.config.accessToken?.trim()) {
48
+ throw new Error("Authentication required: Orders WebSocket requires a JWT access token. " +
49
+ "Call setAccessToken() before connecting or sdk.login() to authenticate.");
50
+ }
51
+ return super.connect();
52
+ }
53
+ /**
54
+ * Subscribe to personal order events for a specific market and trading mode.
55
+ * Requires authentication - call setAccessToken() before connecting.
43
56
  *
44
57
  * @param market - Trading pair symbol (e.g., "BTC/USDC")
45
58
  * @param tradingMode - Trading mode (TradingMode.SPOT or TradingMode.MARGIN)
@@ -47,8 +60,12 @@ export class OrdersWebSocketClientImpl extends BaseWebSocketClientImpl {
47
60
  *
48
61
  * @example
49
62
  * ```typescript
63
+ * // Set authentication token first
64
+ * ordersWS.setAccessToken(authState.accessToken);
65
+ * await ordersWS.connect();
66
+ *
50
67
  * ordersWS.subscribeToOrderEvents("BTC/USDC", TradingMode.SPOT, (event) => {
51
- * console.log("Order event:", event.eventType);
68
+ * console.log("Personal order event:", event.eventType);
52
69
  * });
53
70
  * ```
54
71
  */
@@ -98,12 +115,12 @@ export class OrdersWebSocketClientImpl extends BaseWebSocketClientImpl {
98
115
  /** Handle order-specific events from the backend */
99
116
  handleOrderEvent(event) {
100
117
  try {
101
- const backendEvent = event.data; // Parent (has order_id, event_type, etc.)
102
- const orderData = backendEvent.data; // Nested (has bids, asks, etc.)
103
- const tradingPair = orderData.trading_pair;
104
- const tradingMode = orderData.trading_mode;
118
+ const backendEvent = event.data; // Parent (has order_id, event_type, trading_pair, trading_mode, etc.)
119
+ // Extract trading_pair and trading_mode from parent level
120
+ const tradingPair = backendEvent.trading_pair;
121
+ const tradingMode = backendEvent.trading_mode;
105
122
  if (!tradingPair || !tradingMode) {
106
- console.warn("Missing required order event data:", backendEvent);
123
+ console.warn("Missing required order event data (trading_pair or trading_mode):", backendEvent);
107
124
  return;
108
125
  }
109
126
  const subscriptionKey = `${tradingPair.toUpperCase()}-${tradingMode.toUpperCase()}`;
@@ -114,25 +131,25 @@ export class OrdersWebSocketClientImpl extends BaseWebSocketClientImpl {
114
131
  let eventData;
115
132
  switch (backendEvent.event_type) {
116
133
  case "OrderPlaced":
117
- eventData = keysToCamelCase(orderData);
134
+ eventData = keysToCamelCase(backendEvent.data);
118
135
  break;
119
136
  case "OrderMatched":
120
- eventData = keysToCamelCase(orderData);
137
+ eventData = keysToCamelCase(backendEvent.data);
121
138
  break;
122
139
  case "OrderPartiallyFilled":
123
- eventData = keysToCamelCase(orderData);
140
+ eventData = keysToCamelCase(backendEvent.data);
124
141
  break;
125
142
  case "OrderFilled":
126
- eventData = keysToCamelCase(orderData);
143
+ eventData = keysToCamelCase(backendEvent.data);
127
144
  break;
128
145
  case "OrderCancelled":
129
- eventData = keysToCamelCase(orderData);
146
+ eventData = keysToCamelCase(backendEvent.data);
130
147
  break;
131
148
  case "OrderRejected":
132
- eventData = keysToCamelCase(orderData);
149
+ eventData = keysToCamelCase(backendEvent.data);
133
150
  break;
134
151
  case "OrderExpired":
135
- eventData = keysToCamelCase(orderData);
152
+ eventData = keysToCamelCase(backendEvent.data);
136
153
  break;
137
154
  default:
138
155
  console.warn("Unknown order event type:", backendEvent.event_type);
@@ -1 +1 @@
1
- {"version":3,"file":"orders-ws-client.js","sourceRoot":"","sources":["../../../../src/api/websocket/clients/orders-ws-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orders-ws-client.js","sourceRoot":"","sources":["../../../../src/api/websocket/clients/orders-ws-client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAYL,gBAAgB,GAEjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D;;GAEG;AACH,SAAS,WAAW,CAAC,GAAW;IAC9B,OAAO,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;AACvE,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAI,GAA4B;IACtD,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,GAAQ,CAAC;IACvD,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAQ,CAAC;IAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAU,IAA+B,CAAC,CAAM,CAAC;IAEjH,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,CAAC,QAAQ,CAAC,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,eAAe,CAAU,KAAgC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACtI,CAAC;IACD,OAAO,MAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,yBAA0B,SAAQ,uBAAuB;IAIpE,YAAY,MAAuB;QACjC,KAAK,CAAC,MAAM,CAAC,CAAC;QAJhB,wDAAwD;QAChD,kBAAa,GAAG,IAAI,GAAG,EAAuC,CAAC;IAIvE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CACb,yEAAyE;gBACzE,yEAAyE,CAC1E,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,sBAAsB,CAAC,MAAc,EAAE,WAAwB,EAAE,QAAqC;QACpG,MAAM,OAAO,GAAG,UAAU,MAAM,IAAI,WAAW,EAAE,CAAC;QAClD,MAAM,eAAe,GAAG,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC;QAE/E,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAElD,2DAA2D;QAC3D,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,0BAA0B,CAAC,MAAc,EAAE,WAAwB;QACjE,MAAM,OAAO,GAAG,UAAU,MAAM,IAAI,WAAW,EAAE,CAAC;QAClD,MAAM,eAAe,GAAG,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC;QAE/E,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAE3C,8BAA8B;QAC9B,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,aAAa;YACnB,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB,CAAC,CAAC;IACL,CAAC;IAED,iEAAiE;IACvD,aAAa,CAAC,OAAY;QAClC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAE7B,uCAAuC;QACvC,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,0DAA0D;IAClD,YAAY,CAAC,OAAY;QAC/B,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/D,CAAC;IAED,oDAAoD;IAC5C,gBAAgB,CAAC,KAAU;QACjC,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,sEAAsE;YAEvG,0DAA0D;YAC1D,MAAM,WAAW,GAAG,YAAY,CAAC,YAAY,CAAC;YAC9C,MAAM,WAAW,GAAG,YAAY,CAAC,YAAY,CAAC;YAE9C,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjC,OAAO,CAAC,IAAI,CAAC,mEAAmE,EAAE,YAAY,CAAC,CAAC;gBAChG,OAAO;YACT,CAAC;YAED,MAAM,eAAe,GAAG,GAAG,WAAW,CAAC,WAAW,EAAE,IAAI,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC;YAEpF,+BAA+B;YAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YACxD,IAAI,OAAO,EAAE,CAAC;gBACZ,8EAA8E;gBAC9E,IAAI,SAAyB,CAAC;gBAE9B,QAAQ,YAAY,CAAC,UAAU,EAAE,CAAC;oBAChC,KAAK,aAAa;wBAChB,SAAS,GAAG,eAAe,CAA2B,YAAY,CAAC,IAAI,CAAC,CAAC;wBACzE,MAAM;oBAER,KAAK,cAAc;wBACjB,SAAS,GAAG,eAAe,CAA4B,YAAY,CAAC,IAAI,CAAC,CAAC;wBAC1E,MAAM;oBAER,KAAK,sBAAsB;wBACzB,SAAS,GAAG,eAAe,CAAoC,YAAY,CAAC,IAAI,CAAC,CAAC;wBAClF,MAAM;oBAER,KAAK,aAAa;wBAChB,SAAS,GAAG,eAAe,CAA2B,YAAY,CAAC,IAAI,CAAC,CAAC;wBACzE,MAAM;oBAER,KAAK,gBAAgB;wBACnB,SAAS,GAAG,eAAe,CAA8B,YAAY,CAAC,IAAI,CAAC,CAAC;wBAC5E,MAAM;oBAER,KAAK,eAAe;wBAClB,SAAS,GAAG,eAAe,CAA6B,YAAY,CAAC,IAAI,CAAC,CAAC;wBAC3E,MAAM;oBAER,KAAK,cAAc;wBACjB,SAAS,GAAG,eAAe,CAA4B,YAAY,CAAC,IAAI,CAAC,CAAC;wBAC1E,MAAM;oBAER;wBACE,OAAO,CAAC,IAAI,CAAC,2BAA2B,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;wBACnE,OAAO;gBACX,CAAC;gBAED,MAAM,UAAU,GAAe;oBAC7B,OAAO,EAAE,YAAY,CAAC,QAAQ;oBAC9B,SAAS,EAAE,YAAY,CAAC,UAAU;oBAClC,SAAS,EAAE,YAAY,CAAC,SAAS;oBACjC,IAAI,EAAE,SAAS;iBAChB,CAAC;gBAEF,OAAO,CAAC,UAAU,CAAC,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,qCAAqC,eAAe,EAAE,EAAE,KAAK,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED,4CAA4C;IAClC,OAAO;QACf,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;CACF"}
package/dist/sdk.d.ts CHANGED
@@ -1,11 +1,12 @@
1
1
  /**
2
2
  * Monaco SDK Implementation
3
3
  */
4
- import type { ApplicationsAPI, AuthAPI, AuthState, MarketAPI, MonacoSDK, Network, OHLCVWebSocketClient, OrderbookWebSocketClient, OrdersWebSocketClient, ProfileAPI, SDKConfig, TradingAPI, VaultAPI } from "@0xmonaco/types";
4
+ import type { ApplicationsAPI, AuthAPI, AuthState, FeesAPI, MarketAPI, MonacoSDK, Network, OHLCVWebSocketClient, OrderbookWebSocketClient, OrdersWebSocketClient, ProfileAPI, SDKConfig, TradingAPI, VaultAPI } from "@0xmonaco/types";
5
5
  import { type PublicClient, type TransactionReceipt, type WalletClient } from "viem";
6
6
  export declare class MonacoSDKImpl implements MonacoSDK {
7
7
  auth: AuthAPI;
8
8
  applications: ApplicationsAPI;
9
+ fees: FeesAPI;
9
10
  vault: VaultAPI;
10
11
  trading: TradingAPI;
11
12
  market: MarketAPI;
@@ -34,20 +35,30 @@ export declare class MonacoSDKImpl implements MonacoSDK {
34
35
  * when calling `auth.revokeToken()` or just call `sdk.logout()`.
35
36
  *
36
37
  * @param clientId - The client ID for authentication
38
+ * @param options - Optional configuration
39
+ * @param options.connectWebSocket - Auto-connect all authenticated WebSocket channels after login (currently Orders) (default: false)
37
40
  * @returns The authentication state with accessToken, refreshToken, user info, etc.
38
41
  *
39
42
  * @example
40
43
  * ```typescript
44
+ * // Simple login (manual WebSocket connection)
41
45
  * const authState = await sdk.login(clientId);
42
- * console.log(authState.refreshToken); // Use this for revokeToken()
46
+ * await sdk.websocket.orders.connect();
47
+ *
48
+ * // Auto-connect authenticated WebSocket channels (currently Orders)
49
+ * const authState = await sdk.login(clientId, { connectWebSocket: true });
50
+ * // Orders WebSocket is now connected and ready
51
+ * sdk.websocket.orders.subscribeToOrderEvents("BTC/USDC", "SPOT", callback);
43
52
  *
44
53
  * // Later, to revoke:
45
54
  * await sdk.auth.revokeToken(authState.refreshToken); // ✅
46
55
  * // Or simply:
47
- * await sdk.logout(); // ✅ Calls revokeToken internally
56
+ * await sdk.logout(); // ✅ Calls revokeToken internally and disconnects WebSockets
48
57
  * ```
49
58
  */
50
- login(clientId: string): Promise<AuthState>;
59
+ login(clientId: string, options?: {
60
+ connectWebSocket?: boolean;
61
+ }): Promise<AuthState>;
51
62
  /**
52
63
  * Get the current authentication state
53
64
  *
@@ -57,13 +68,14 @@ export declare class MonacoSDKImpl implements MonacoSDK {
57
68
  /**
58
69
  * Logout the user
59
70
  *
60
- * This method revokes the refresh token (if available) and clears the local auth state.
71
+ * This method revokes the refresh token (if available), disconnects all authenticated
72
+ * WebSocket channels, and clears the local auth state.
61
73
  * It internally calls `auth.revokeToken(refreshToken)` to invalidate the token on the server.
62
74
  *
63
75
  * @example
64
76
  * ```typescript
65
77
  * await sdk.logout();
66
- * // Token is revoked and local state cleared
78
+ * // Token is revoked, authenticated WebSockets disconnected, and local state cleared
67
79
  * ```
68
80
  */
69
81
  logout(): Promise<void>;
package/dist/sdk.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EACV,eAAe,EACf,OAAO,EACP,SAAS,EACT,SAAS,EACT,SAAS,EACT,OAAO,EACP,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,UAAU,EACV,SAAS,EACT,UAAU,EACV,QAAQ,EACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAkD,KAAK,YAAY,EAAE,KAAK,kBAAkB,EAAE,KAAK,YAAY,EAAE,MAAM,MAAM,CAAC;AAerI,qBAAa,aAAc,YAAW,SAAS;IACtC,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,eAAe,CAAC;IAC9B,KAAK,EAAE,QAAQ,CAAC;IAChB,OAAO,EAAE,UAAU,CAAC;IACpB,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,UAAU,CAAC;IACpB,SAAS,EAAE;QAChB,MAAM,EAAE,qBAAqB,CAAC;QAC9B,KAAK,EAAE,oBAAoB,CAAC;QAC5B,SAAS,EAAE,wBAAwB,CAAC;KACrC,CAAC;IAEK,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,EAAE,YAAY,CAAC;IAElC,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,KAAK,CAAQ;gBAET,GAAG,EAAE,SAAS;IAoD1B;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAyBjD;;;;OAIG;IACH,YAAY,IAAI,SAAS,GAAG,SAAS;IAIrC;;;;;;;;;;;OAWG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAY7B;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC;IAqCvC;;OAEG;IACH,eAAe,IAAI,OAAO;IAI1B;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,iBAAiB,IAAI,MAAM;IAO3B;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;OAEG;IACH,UAAU,IAAI,MAAM;IAIpB;;;;;;OAMG;IACG,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAO9G;AAMD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,CAE5D"}
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EACV,eAAe,EACf,OAAO,EACP,SAAS,EACT,OAAO,EACP,SAAS,EACT,SAAS,EACT,OAAO,EACP,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,UAAU,EACV,SAAS,EACT,UAAU,EACV,QAAQ,EACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAkD,KAAK,YAAY,EAAE,KAAK,kBAAkB,EAAE,KAAK,YAAY,EAAE,MAAM,MAAM,CAAC;AAgBrI,qBAAa,aAAc,YAAW,SAAS;IACtC,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,eAAe,CAAC;IAC9B,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,QAAQ,CAAC;IAChB,OAAO,EAAE,UAAU,CAAC;IACpB,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,UAAU,CAAC;IACpB,SAAS,EAAE;QAChB,MAAM,EAAE,qBAAqB,CAAC;QAC9B,KAAK,EAAE,oBAAoB,CAAC;QAC5B,SAAS,EAAE,wBAAwB,CAAC;KACrC,CAAC;IAEK,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,EAAE,YAAY,CAAC;IAElC,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,KAAK,CAAQ;gBAET,GAAG,EAAE,SAAS;IA2D1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACG,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IAgC3F;;;;OAIG;IACH,YAAY,IAAI,SAAS,GAAG,SAAS;IAIrC;;;;;;;;;;;;OAYG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAmB7B;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC;IAsCvC;;OAEG;IACH,eAAe,IAAI,OAAO;IAI1B;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,iBAAiB,IAAI,MAAM;IAO3B;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;OAEG;IACH,UAAU,IAAI,MAAM;IAIpB;;;;;;OAMG;IACG,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAO9G;AAMD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,CAE5D"}
package/dist/sdk.js CHANGED
@@ -2,6 +2,7 @@ import { createPublicClient, http } from "viem";
2
2
  import { sei, seiTestnet } from "viem/chains";
3
3
  import { ApplicationsAPIImpl } from "./api/applications";
4
4
  import { AuthAPIImpl } from "./api/auth";
5
+ import { FeesAPIImpl } from "./api/fees";
5
6
  import { MarketAPIImpl } from "./api/market";
6
7
  import { ProfileAPIImpl } from "./api/profile";
7
8
  import { TradingAPIImpl } from "./api/trading";
@@ -39,19 +40,26 @@ export class MonacoSDKImpl {
39
40
  this.applications = new ApplicationsAPIImpl(endpoints.apiUrl);
40
41
  this.market = new MarketAPIImpl(endpoints.apiUrl);
41
42
  this.auth = new AuthAPIImpl(this.walletClient, this.chain, endpoints.apiUrl);
43
+ this.fees = new FeesAPIImpl(endpoints.apiUrl);
42
44
  this.vault = new VaultAPIImpl(this.publicClient, this.walletClient, this.chain, this.market, this.applications, endpoints.apiUrl);
43
45
  this.trading = new TradingAPIImpl(this.market, endpoints.apiUrl);
44
46
  this.profile = new ProfileAPIImpl(endpoints.apiUrl);
45
47
  // Instantiate WebSocket clients
46
48
  this.websocket = {
49
+ // Orders WebSocket - REQUIRES AUTHENTICATION (this will serve Order Event updates for the authenticated user)
47
50
  orders: new OrdersWebSocketClientImpl({
48
51
  wsUrl: endpoints.apiUrl + "/ws",
52
+ // accessToken will be set after login via setAccessToken() to authenticate the user
49
53
  }),
54
+ // OHLCV WebSocket - PUBLIC (this will serve OHLCV Event updates for a specific market)
50
55
  ohlcv: new OHLCVWebSocketClientImpl({
51
56
  wsUrl: endpoints.apiUrl + "/ws",
57
+ // No accessToken required to be set - public access
52
58
  }),
59
+ // Orderbook WebSocket - PUBLIC (this will serve Orderbook Event updates for a specific market)
53
60
  orderbook: new OrderbookWebSocketClientImpl({
54
61
  wsUrl: endpoints.apiUrl + "/ws",
62
+ // No accessToken required to be set - public access
55
63
  }),
56
64
  };
57
65
  }
@@ -71,20 +79,28 @@ export class MonacoSDKImpl {
71
79
  * when calling `auth.revokeToken()` or just call `sdk.logout()`.
72
80
  *
73
81
  * @param clientId - The client ID for authentication
82
+ * @param options - Optional configuration
83
+ * @param options.connectWebSocket - Auto-connect all authenticated WebSocket channels after login (currently Orders) (default: false)
74
84
  * @returns The authentication state with accessToken, refreshToken, user info, etc.
75
85
  *
76
86
  * @example
77
87
  * ```typescript
88
+ * // Simple login (manual WebSocket connection)
78
89
  * const authState = await sdk.login(clientId);
79
- * console.log(authState.refreshToken); // Use this for revokeToken()
90
+ * await sdk.websocket.orders.connect();
91
+ *
92
+ * // Auto-connect authenticated WebSocket channels (currently Orders)
93
+ * const authState = await sdk.login(clientId, { connectWebSocket: true });
94
+ * // Orders WebSocket is now connected and ready
95
+ * sdk.websocket.orders.subscribeToOrderEvents("BTC/USDC", "SPOT", callback);
80
96
  *
81
97
  * // Later, to revoke:
82
98
  * await sdk.auth.revokeToken(authState.refreshToken); // ✅
83
99
  * // Or simply:
84
- * await sdk.logout(); // ✅ Calls revokeToken internally
100
+ * await sdk.logout(); // ✅ Calls revokeToken internally and disconnects WebSockets
85
101
  * ```
86
102
  */
87
- async login(clientId) {
103
+ async login(clientId, options) {
88
104
  const response = await this.auth.authenticate(clientId);
89
105
  this.authState = {
90
106
  accessToken: response.accessToken,
@@ -94,6 +110,7 @@ export class MonacoSDKImpl {
94
110
  };
95
111
  // Set access tokens for APIs
96
112
  this.applications.setAccessToken(this.authState.accessToken);
113
+ this.fees.setAccessToken(this.authState.accessToken);
97
114
  this.vault.setAccessToken(this.authState.accessToken);
98
115
  this.trading.setAccessToken(this.authState.accessToken);
99
116
  this.market.setAccessToken(this.authState.accessToken);
@@ -102,6 +119,11 @@ export class MonacoSDKImpl {
102
119
  this.websocket.orders.setAccessToken(this.authState.accessToken);
103
120
  this.websocket.ohlcv.setAccessToken(this.authState.accessToken);
104
121
  this.websocket.orderbook.setAccessToken(this.authState.accessToken);
122
+ // Optionally auto-connect authenticated WebSocket channels
123
+ // Currently includes: Orders (personal order updates)
124
+ if (options?.connectWebSocket) {
125
+ await this.websocket.orders.connect();
126
+ }
105
127
  return this.authState;
106
128
  }
107
129
  /**
@@ -115,13 +137,14 @@ export class MonacoSDKImpl {
115
137
  /**
116
138
  * Logout the user
117
139
  *
118
- * This method revokes the refresh token (if available) and clears the local auth state.
140
+ * This method revokes the refresh token (if available), disconnects all authenticated
141
+ * WebSocket channels, and clears the local auth state.
119
142
  * It internally calls `auth.revokeToken(refreshToken)` to invalidate the token on the server.
120
143
  *
121
144
  * @example
122
145
  * ```typescript
123
146
  * await sdk.logout();
124
- * // Token is revoked and local state cleared
147
+ * // Token is revoked, authenticated WebSockets disconnected, and local state cleared
125
148
  * ```
126
149
  */
127
150
  async logout() {
@@ -134,6 +157,11 @@ export class MonacoSDKImpl {
134
157
  console.warn("Failed to revoke token on logout:", error);
135
158
  }
136
159
  }
160
+ // Disconnect authenticated WebSocket channels if connected
161
+ // Currently includes: Orders (personal order updates)
162
+ if (this.websocket.orders.isConnected()) {
163
+ this.websocket.orders.disconnect();
164
+ }
137
165
  this.authState = undefined;
138
166
  }
139
167
  /**
@@ -152,6 +180,7 @@ export class MonacoSDKImpl {
152
180
  expiresAt: response.expiresAt,
153
181
  };
154
182
  // Set new access tokens for APIs
183
+ this.fees.setAccessToken(this.authState.accessToken);
155
184
  this.vault.setAccessToken(this.authState.accessToken);
156
185
  this.trading.setAccessToken(this.authState.accessToken);
157
186
  this.market.setAccessToken(this.authState.accessToken);
package/dist/sdk.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@0xmonaco/core",
3
- "version": "0.2.11",
3
+ "version": "0.2.13",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -13,7 +13,7 @@
13
13
  },
14
14
  "dependencies": {
15
15
  "@0xmonaco/contracts": "0.1.8",
16
- "@0xmonaco/types": "0.2.10"
16
+ "@0xmonaco/types": "0.2.11"
17
17
  },
18
18
  "devDependencies": {
19
19
  "@types/node": "^20.11.30",