@0xmonaco/core 0.2.1 → 0.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/market/api.d.ts +2 -2
- package/dist/api/market/api.d.ts.map +1 -1
- package/dist/api/market/api.js.map +1 -1
- package/dist/api/trading/api.d.ts +19 -2
- package/dist/api/trading/api.d.ts.map +1 -1
- package/dist/api/trading/api.js +20 -3
- package/dist/api/trading/api.js.map +1 -1
- package/dist/api/vault/api.d.ts +25 -42
- package/dist/api/vault/api.d.ts.map +1 -1
- package/dist/api/vault/api.js +65 -211
- package/dist/api/vault/api.js.map +1 -1
- package/dist/api/websocket/base-ws-client.d.ts +8 -0
- package/dist/api/websocket/base-ws-client.d.ts.map +1 -1
- package/dist/api/websocket/base-ws-client.js +25 -6
- package/dist/api/websocket/base-ws-client.js.map +1 -1
- package/dist/api/websocket/{ohlcv-ws-client.d.ts → clients/ohlcv-ws-client.d.ts} +18 -13
- package/dist/api/websocket/clients/ohlcv-ws-client.d.ts.map +1 -0
- package/dist/api/websocket/clients/ohlcv-ws-client.js +126 -0
- package/dist/api/websocket/clients/ohlcv-ws-client.js.map +1 -0
- package/dist/api/websocket/clients/orderbook-ws-client.d.ts +46 -0
- package/dist/api/websocket/clients/orderbook-ws-client.d.ts.map +1 -0
- package/dist/api/websocket/clients/orderbook-ws-client.js +131 -0
- package/dist/api/websocket/clients/orderbook-ws-client.js.map +1 -0
- package/dist/api/websocket/{orders-ws-client.d.ts → clients/orders-ws-client.d.ts} +17 -13
- package/dist/api/websocket/clients/orders-ws-client.d.ts.map +1 -0
- package/dist/api/websocket/clients/orders-ws-client.js +124 -0
- package/dist/api/websocket/clients/orders-ws-client.js.map +1 -0
- package/dist/api/websocket/index.d.ts +4 -3
- package/dist/api/websocket/index.d.ts.map +1 -1
- package/dist/api/websocket/index.js +4 -3
- package/dist/api/websocket/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/sdk.d.ts +2 -1
- package/dist/sdk.d.ts.map +1 -1
- package/dist/sdk.js +6 -1
- package/dist/sdk.js.map +1 -1
- package/package.json +5 -5
- package/dist/api/websocket/ohlcv-ws-client.d.ts.map +0 -1
- package/dist/api/websocket/ohlcv-ws-client.js +0 -123
- package/dist/api/websocket/ohlcv-ws-client.js.map +0 -1
- package/dist/api/websocket/orders-ws-client.d.ts.map +0 -1
- package/dist/api/websocket/orders-ws-client.js +0 -131
- package/dist/api/websocket/orders-ws-client.js.map +0 -1
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Orders WebSocket Client Implementation
|
|
3
|
+
*
|
|
4
|
+
* Specialized WebSocket client for order-related events and operations.
|
|
5
|
+
* Extends the base WebSocket client with order-specific functionality.
|
|
6
|
+
*/
|
|
7
|
+
import { WebSocketChannel, } from "@0xmonaco/types";
|
|
8
|
+
import { BaseWebSocketClientImpl } from "../base-ws-client";
|
|
9
|
+
/**
|
|
10
|
+
* Orders-specific WebSocket client implementation
|
|
11
|
+
*/
|
|
12
|
+
export class OrdersWebSocketClientImpl extends BaseWebSocketClientImpl {
|
|
13
|
+
constructor(config) {
|
|
14
|
+
super(config);
|
|
15
|
+
// Map to store order event handlers by subscription key
|
|
16
|
+
this.orderHandlers = new Map();
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Subscribe to order events for a specific market and trading mode.
|
|
20
|
+
*
|
|
21
|
+
* @param market - Trading pair symbol (e.g., "BTC/USDC")
|
|
22
|
+
* @param tradingMode - Trading mode (TradingMode.SPOT or TradingMode.MARGIN)
|
|
23
|
+
* @param callback - Function to handle incoming order events
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* ordersWS.subscribeToOrderEvents("BTC/USDC", TradingMode.SPOT, (event) => {
|
|
28
|
+
* console.log("Order event:", event.eventType);
|
|
29
|
+
* });
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
subscribeToOrderEvents(market, tradingMode, callback) {
|
|
33
|
+
const channel = `orders:${market}:${tradingMode}`;
|
|
34
|
+
const subscriptionKey = `${market.toUpperCase()}-${tradingMode.toUpperCase()}`;
|
|
35
|
+
this.orderHandlers.set(subscriptionKey, callback);
|
|
36
|
+
// Send subscription message using backend's channel format
|
|
37
|
+
this.send({
|
|
38
|
+
type: "Subscribe",
|
|
39
|
+
channels: [channel],
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Unsubscribe from order events for a specific market and trading mode.
|
|
44
|
+
*
|
|
45
|
+
* @param market - Trading pair symbol (e.g., "BTC/USDC")
|
|
46
|
+
* @param tradingMode - Trading mode (TradingMode.SPOT or TradingMode.MARGIN)
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* ```typescript
|
|
50
|
+
* ordersWS.unsubscribeFromOrderEvents("BTC/USDC", TradingMode.SPOT);
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
unsubscribeFromOrderEvents(market, tradingMode) {
|
|
54
|
+
const channel = `orders:${market}:${tradingMode}`;
|
|
55
|
+
const subscriptionKey = `${market.toUpperCase()}-${tradingMode.toUpperCase()}`;
|
|
56
|
+
this.orderHandlers.delete(subscriptionKey);
|
|
57
|
+
// Send unsubscription message
|
|
58
|
+
this.send({
|
|
59
|
+
type: "Unsubscribe",
|
|
60
|
+
channels: [channel],
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
/** Override message handling to process order-specific events */
|
|
64
|
+
handleMessage(message) {
|
|
65
|
+
super.handleMessage(message);
|
|
66
|
+
// Handle order-specific Event messages
|
|
67
|
+
if (this.isOrderEvent(message)) {
|
|
68
|
+
this.handleOrderEvent(message);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/** Check if message is an order event from the backend */
|
|
72
|
+
isOrderEvent(message) {
|
|
73
|
+
return this.isEventMessage(message, WebSocketChannel.Orders);
|
|
74
|
+
}
|
|
75
|
+
/** Handle order-specific events from the backend */
|
|
76
|
+
handleOrderEvent(event) {
|
|
77
|
+
try {
|
|
78
|
+
const backendEvent = event.data; // Parent (has order_id, event_type, etc.)
|
|
79
|
+
const market = backendEvent.trading_pair;
|
|
80
|
+
const tradingMode = backendEvent.trading_mode;
|
|
81
|
+
if (!market || !tradingMode) {
|
|
82
|
+
console.warn("Missing required order event data:", backendEvent);
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
const subscriptionKey = `${market.toUpperCase()}-${tradingMode.toUpperCase()}`;
|
|
86
|
+
// Find the appropriate handler
|
|
87
|
+
const handler = this.orderHandlers.get(subscriptionKey);
|
|
88
|
+
if (handler) {
|
|
89
|
+
// Transform backend event to OrderEvent format
|
|
90
|
+
const orderEvent = {
|
|
91
|
+
orderId: backendEvent.order_id,
|
|
92
|
+
eventType: backendEvent.event_type || "OrderPlaced",
|
|
93
|
+
details: {
|
|
94
|
+
applicationId: backendEvent.application_id,
|
|
95
|
+
orderType: backendEvent.order_type,
|
|
96
|
+
price: backendEvent.price,
|
|
97
|
+
quantity: backendEvent.quantity,
|
|
98
|
+
side: backendEvent.side,
|
|
99
|
+
tradingMode: tradingMode,
|
|
100
|
+
tradingPair: market,
|
|
101
|
+
tradingPairId: backendEvent.trading_pair_id,
|
|
102
|
+
userId: backendEvent.user_id,
|
|
103
|
+
cancelledAt: backendEvent.cancelled_at,
|
|
104
|
+
filledQuantity: backendEvent.filled_quantity,
|
|
105
|
+
remainingQuantity: backendEvent.remaining_quantity,
|
|
106
|
+
reason: backendEvent.reason,
|
|
107
|
+
},
|
|
108
|
+
};
|
|
109
|
+
handler(orderEvent);
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
console.warn(`No handler found for order event: ${subscriptionKey}`, event);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
catch (error) {
|
|
116
|
+
console.error("Error handling order event:", error, event);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
/** Clean up resources when disconnecting */
|
|
120
|
+
cleanup() {
|
|
121
|
+
this.orderHandlers.clear();
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
//# sourceMappingURL=orders-ws-client.js.map
|
|
@@ -0,0 +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,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WebSocket API Module
|
|
3
3
|
*
|
|
4
|
-
* Exports Base WebSocket client implementation + Orders WebSocket client implementation +
|
|
4
|
+
* Exports Base WebSocket client implementation + Orders WebSocket client implementation + OHLCV WebSocket client implementation + Orderbook WebSocket client implementation
|
|
5
5
|
*/
|
|
6
6
|
export { BaseWebSocketClientImpl } from "./base-ws-client";
|
|
7
|
-
export { OrdersWebSocketClientImpl } from "./orders-ws-client";
|
|
8
|
-
export { OHLCVWebSocketClientImpl } from "./ohlcv-ws-client";
|
|
7
|
+
export { OrdersWebSocketClientImpl } from "./clients/orders-ws-client";
|
|
8
|
+
export { OHLCVWebSocketClientImpl } from "./clients/ohlcv-ws-client";
|
|
9
|
+
export { OrderbookWebSocketClientImpl } from "./clients/orderbook-ws-client";
|
|
9
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/websocket/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/websocket/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WebSocket API Module
|
|
3
3
|
*
|
|
4
|
-
* Exports Base WebSocket client implementation + Orders WebSocket client implementation +
|
|
4
|
+
* Exports Base WebSocket client implementation + Orders WebSocket client implementation + OHLCV WebSocket client implementation + Orderbook WebSocket client implementation
|
|
5
5
|
*/
|
|
6
6
|
export { BaseWebSocketClientImpl } from "./base-ws-client";
|
|
7
|
-
export { OrdersWebSocketClientImpl } from "./orders-ws-client";
|
|
8
|
-
export { OHLCVWebSocketClientImpl } from "./ohlcv-ws-client";
|
|
7
|
+
export { OrdersWebSocketClientImpl } from "./clients/orders-ws-client";
|
|
8
|
+
export { OHLCVWebSocketClientImpl } from "./clients/ohlcv-ws-client";
|
|
9
|
+
export { OrderbookWebSocketClientImpl } from "./clients/orderbook-ws-client";
|
|
9
10
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/websocket/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/websocket/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Provides secure access to Monaco's hybrid trading architecture.
|
|
6
6
|
*/
|
|
7
7
|
export { MonacoSDKImpl as MonacoSDK } from "./sdk";
|
|
8
|
-
export type { MonacoSDK as IMonacoSDK, SDKConfig, Network, VaultAPI, TradingAPI, MarketAPI, ProfileAPI, OrdersWebSocketClient, OHLCVWebSocketClient, WebSocketConfig, ConnectionStatus, Balance, TransactionResult, CancelOrderResponse, Candlestick,
|
|
8
|
+
export type { MonacoSDK as IMonacoSDK, SDKConfig, Network, VaultAPI, TradingAPI, MarketAPI, ProfileAPI, OrdersWebSocketClient, OHLCVWebSocketClient, WebSocketConfig, ConnectionStatus, Balance, TransactionResult, CancelOrderResponse, Candlestick, Interval, OHLCVEvent, } from "@0xmonaco/types";
|
|
9
9
|
export { NETWORK_ENDPOINTS } from "./networks";
|
|
10
10
|
export { MonacoCoreError, InitializationError, InvalidConfigError, InvalidStateError, UnsupportedNetworkError, APIError, ContractError, TransactionError, OrderError, InvalidOrderError, OrderNotFoundError, InsufficientBalanceError, EventError, SubscriptionError, } from "./errors";
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,aAAa,IAAI,SAAS,EAAE,MAAM,OAAO,CAAC;AAMnD,YAAY,EACV,SAAS,IAAI,UAAU,EACvB,SAAS,EACT,OAAO,EACP,QAAQ,EACR,UAAU,EACV,SAAS,EACT,UAAU,EACV,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,OAAO,EACP,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,aAAa,IAAI,SAAS,EAAE,MAAM,OAAO,CAAC;AAMnD,YAAY,EACV,SAAS,IAAI,UAAU,EACvB,SAAS,EACT,OAAO,EACP,QAAQ,EACR,UAAU,EACV,SAAS,EACT,UAAU,EACV,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,OAAO,EACP,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,QAAQ,EACR,UAAU,GACX,MAAM,iBAAiB,CAAC;AAMzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAM/C,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,EACvB,QAAQ,EACR,aAAa,EACb,gBAAgB,EAChB,UAAU,EACV,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,UAAU,EACV,iBAAiB,GAClB,MAAM,UAAU,CAAC"}
|
package/dist/sdk.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Monaco SDK Implementation
|
|
3
3
|
*/
|
|
4
|
-
import type { ApplicationsAPI, AuthAPI, AuthState, MarketAPI, MonacoSDK, Network, OrdersWebSocketClient, OHLCVWebSocketClient, ProfileAPI, SDKConfig, TradingAPI, VaultAPI } from "@0xmonaco/types";
|
|
4
|
+
import type { ApplicationsAPI, AuthAPI, AuthState, MarketAPI, MonacoSDK, Network, OrdersWebSocketClient, OHLCVWebSocketClient, OrderbookWebSocketClient, 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;
|
|
@@ -13,6 +13,7 @@ export declare class MonacoSDKImpl implements MonacoSDK {
|
|
|
13
13
|
websocket: {
|
|
14
14
|
orders: OrdersWebSocketClient;
|
|
15
15
|
ohlcv: OHLCVWebSocketClient;
|
|
16
|
+
orderbook: OrderbookWebSocketClient;
|
|
16
17
|
};
|
|
17
18
|
walletClient: WalletClient;
|
|
18
19
|
publicClient: PublicClient;
|
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,qBAAqB,EACrB,oBAAoB,EACpB,UAAU,EACV,SAAS,EACT,UAAU,EACV,QAAQ,EACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EAClB,MAAM,MAAM,CAAC;
|
|
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,qBAAqB,EACrB,oBAAoB,EACpB,wBAAwB,EACxB,UAAU,EACV,SAAS,EACT,UAAU,EACV,QAAQ,EACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EAClB,MAAM,MAAM,CAAC;AAmBd,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;IAkE1B;;;OAGG;IACG,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IA0BjD;;;OAGG;IACH,YAAY,IAAI,SAAS,GAAG,SAAS;IAIrC;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAY7B;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC;IAuCvC;;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,CACtB,IAAI,EAAE,MAAM,EACZ,aAAa,CAAC,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,kBAAkB,CAAC;CAO/B;AAMD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,CAE5D"}
|
package/dist/sdk.js
CHANGED
|
@@ -6,7 +6,7 @@ import { MarketAPIImpl } from "./api/market";
|
|
|
6
6
|
import { ProfileAPIImpl } from "./api/profile";
|
|
7
7
|
import { TradingAPIImpl } from "./api/trading";
|
|
8
8
|
import { VaultAPIImpl } from "./api/vault";
|
|
9
|
-
import { OrdersWebSocketClientImpl, OHLCVWebSocketClientImpl, } from "./api/websocket";
|
|
9
|
+
import { OrdersWebSocketClientImpl, OHLCVWebSocketClientImpl, OrderbookWebSocketClientImpl, } from "./api/websocket";
|
|
10
10
|
import { APIError, InvalidConfigError, InvalidStateError } from "./errors";
|
|
11
11
|
import { NETWORK_ENDPOINTS } from "./networks";
|
|
12
12
|
// ---------------------------------------------------------------------------
|
|
@@ -50,6 +50,9 @@ export class MonacoSDKImpl {
|
|
|
50
50
|
ohlcv: new OHLCVWebSocketClientImpl({
|
|
51
51
|
wsUrl: endpoints.apiUrl + "/ws",
|
|
52
52
|
}),
|
|
53
|
+
orderbook: new OrderbookWebSocketClientImpl({
|
|
54
|
+
wsUrl: endpoints.apiUrl + "/ws",
|
|
55
|
+
}),
|
|
53
56
|
};
|
|
54
57
|
}
|
|
55
58
|
// -----------------------------------------------------------------------
|
|
@@ -77,6 +80,7 @@ export class MonacoSDKImpl {
|
|
|
77
80
|
// Set WebSocket access tokens
|
|
78
81
|
this.websocket.orders.setAccessToken(this.authState.accessToken);
|
|
79
82
|
this.websocket.ohlcv.setAccessToken(this.authState.accessToken);
|
|
83
|
+
this.websocket.orderbook.setAccessToken(this.authState.accessToken);
|
|
80
84
|
return this.authState;
|
|
81
85
|
}
|
|
82
86
|
/**
|
|
@@ -124,6 +128,7 @@ export class MonacoSDKImpl {
|
|
|
124
128
|
// Set WebSocket access tokens
|
|
125
129
|
this.websocket.orders.setAccessToken(this.authState.accessToken);
|
|
126
130
|
this.websocket.ohlcv.setAccessToken(this.authState.accessToken);
|
|
131
|
+
this.websocket.orderbook.setAccessToken(this.authState.accessToken);
|
|
127
132
|
return this.authState;
|
|
128
133
|
}
|
|
129
134
|
catch (error) {
|
package/dist/sdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"
|
|
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.
|
|
3
|
+
"version": "0.2.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -9,18 +9,18 @@
|
|
|
9
9
|
"dist"
|
|
10
10
|
],
|
|
11
11
|
"peerDependencies": {
|
|
12
|
-
"viem": "2.
|
|
12
|
+
"viem": "^2.31.7"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@0xmonaco/contracts": "0.1.
|
|
16
|
-
"@0xmonaco/types": "0.2.
|
|
15
|
+
"@0xmonaco/contracts": "0.1.8",
|
|
16
|
+
"@0xmonaco/types": "0.2.3"
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {
|
|
19
19
|
"@types/node": "^20.11.30",
|
|
20
20
|
"@types/ws": "^8.18.1",
|
|
21
21
|
"@vitest/coverage-v8": "^1.3.1",
|
|
22
22
|
"dotenv": "^17.1.0",
|
|
23
|
-
"typescript": "5.
|
|
23
|
+
"typescript": "5.9.2",
|
|
24
24
|
"vitest": "^1.3.1",
|
|
25
25
|
"ws": "^8.18.3"
|
|
26
26
|
},
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ohlcv-ws-client.d.ts","sourceRoot":"","sources":["../../../src/api/websocket/ohlcv-ws-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EACV,oBAAoB,EACpB,eAAe,EACf,UAAU,EACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAE3D;;GAEG;AACH,qBAAa,wBACX,SAAQ,uBACR,YAAW,oBAAoB;IAE/B,OAAO,CAAC,aAAa,CAAuD;gBAEhE,MAAM,EAAE,eAAe;IAInC;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CACd,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GACpC,IAAI;IAaP;;;;;;OAMG;IACH,oBAAoB,CAClB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACf,IAAI;IAaP,mEAAmE;IACnE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAU3C,0DAA0D;IAC1D,OAAO,CAAC,YAAY;IAgBpB,oDAAoD;IACpD,OAAO,CAAC,gBAAgB;IA+CxB,4CAA4C;IAC5C,UAAU,IAAI,IAAI;CAInB"}
|
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
import { BaseWebSocketClientImpl } from "./base-ws-client";
|
|
2
|
-
/**
|
|
3
|
-
* OHLCV-specific WebSocket client implementation
|
|
4
|
-
*/
|
|
5
|
-
export class OHLCVWebSocketClientImpl extends BaseWebSocketClientImpl {
|
|
6
|
-
constructor(config) {
|
|
7
|
-
super(config);
|
|
8
|
-
this.ohlcvHandlers = new Map();
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Subscribe to OHLCV (candlestick) updates for a specific trading pair, mode, and interval.
|
|
12
|
-
*
|
|
13
|
-
* @param symbol - Trading pair symbol (e.g., "BTC-USDC")
|
|
14
|
-
* @param tradingMode - Trading mode ("SPOT" or "MARGIN")
|
|
15
|
-
* @param interval - Candlestick interval (e.g., "1m", "5m", "1h", "1d")
|
|
16
|
-
* @param callback - Function to handle incoming OHLCV events
|
|
17
|
-
*
|
|
18
|
-
* @example
|
|
19
|
-
* ```typescript
|
|
20
|
-
* ohlcvWS.subscribeToOHLCV("BTC-USDC", "SPOT", "1m", (event) => {
|
|
21
|
-
* console.log("New OHLCV data:", event.candlestick);
|
|
22
|
-
* });
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
subscribeToOHLCV(symbol, tradingMode, interval, callback) {
|
|
26
|
-
const channel = `ohlcv:${symbol.toUpperCase()}:${tradingMode.toUpperCase()}:${interval.toLowerCase()}`;
|
|
27
|
-
const subscriptionKey = `${symbol.toUpperCase()}-${tradingMode.toUpperCase()}-${interval.toLowerCase()}`;
|
|
28
|
-
this.ohlcvHandlers.set(subscriptionKey, callback);
|
|
29
|
-
// Send subscription message using the backend's channel format
|
|
30
|
-
this.send({
|
|
31
|
-
type: "Subscribe",
|
|
32
|
-
channels: [channel],
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Unsubscribe from OHLCV (candlestick) updates.
|
|
37
|
-
*
|
|
38
|
-
* @param symbol - Trading pair symbol (e.g., "BTC-USDC")
|
|
39
|
-
* @param tradingMode - Trading mode ("SPOT" or "MARGIN")
|
|
40
|
-
* @param interval - Candlestick interval (e.g., "1m", "5m", "1h", "1d")
|
|
41
|
-
*/
|
|
42
|
-
unsubscribeFromOHLCV(symbol, tradingMode, interval) {
|
|
43
|
-
const channel = `ohlcv:${symbol.toUpperCase()}:${tradingMode.toUpperCase()}:${interval.toLowerCase()}`;
|
|
44
|
-
const subscriptionKey = `${symbol.toUpperCase()}-${tradingMode.toUpperCase()}-${interval.toLowerCase()}`;
|
|
45
|
-
this.ohlcvHandlers.delete(subscriptionKey);
|
|
46
|
-
// Send unsubscription message
|
|
47
|
-
this.send({
|
|
48
|
-
type: "Unsubscribe",
|
|
49
|
-
channels: [channel],
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
/** Handle incoming WebSocket messages with OHLCV-specific logic */
|
|
53
|
-
handleMessage(message) {
|
|
54
|
-
// Handle base messages first (PONG, etc.)
|
|
55
|
-
super.handleMessage(message);
|
|
56
|
-
// Handle OHLCV-specific Event messages
|
|
57
|
-
if (this.isOHLCVEvent(message)) {
|
|
58
|
-
this.handleOHLCVEvent(message);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
/** Check if message is an OHLCV event from the backend */
|
|
62
|
-
isOHLCVEvent(message) {
|
|
63
|
-
if (!message || typeof message !== "object") {
|
|
64
|
-
return false;
|
|
65
|
-
}
|
|
66
|
-
// Backend sends: { type: "Event", channel: "ohlcv:...", data: {...} }
|
|
67
|
-
return (message.type === "Event" &&
|
|
68
|
-
message.channel &&
|
|
69
|
-
typeof message.channel === "string" &&
|
|
70
|
-
message.channel.startsWith("ohlcv:") &&
|
|
71
|
-
message.data &&
|
|
72
|
-
typeof message.data === "object");
|
|
73
|
-
}
|
|
74
|
-
/** Handle OHLCV-specific events from the backend */
|
|
75
|
-
handleOHLCVEvent(event) {
|
|
76
|
-
try {
|
|
77
|
-
// Parse channel: "ohlcv:BTC-USDC:SPOT:1m"
|
|
78
|
-
const channelParts = event.channel.split(":");
|
|
79
|
-
if (channelParts.length !== 4) {
|
|
80
|
-
console.warn("Invalid OHLCV channel format:", event.channel);
|
|
81
|
-
return;
|
|
82
|
-
}
|
|
83
|
-
const [, symbol, tradingMode, interval] = channelParts;
|
|
84
|
-
const subscriptionKey = `${symbol.toUpperCase()}-${tradingMode.toUpperCase()}-${interval.toLowerCase()}`;
|
|
85
|
-
const handler = this.ohlcvHandlers.get(subscriptionKey);
|
|
86
|
-
if (handler) {
|
|
87
|
-
// Backend OHLCVUpdateEvent structure
|
|
88
|
-
const ohlcvData = event.data.data || event.data;
|
|
89
|
-
// Transform to match OHLCVEvent interface
|
|
90
|
-
const ohlcvEvent = {
|
|
91
|
-
symbol: ohlcvData.pair || symbol,
|
|
92
|
-
interval: ohlcvData.interval || interval,
|
|
93
|
-
tradingMode: ohlcvData.trading_mode || tradingMode,
|
|
94
|
-
candlestick: {
|
|
95
|
-
t: ohlcvData.period_start || 0,
|
|
96
|
-
T: ohlcvData.period_end || 0,
|
|
97
|
-
o: ohlcvData.open || "0",
|
|
98
|
-
h: ohlcvData.high || "0",
|
|
99
|
-
l: ohlcvData.low || "0",
|
|
100
|
-
c: ohlcvData.close || "0",
|
|
101
|
-
v: ohlcvData.volume || "0",
|
|
102
|
-
s: ohlcvData.pair || symbol,
|
|
103
|
-
i: ohlcvData.interval || interval,
|
|
104
|
-
n: ohlcvData.trades_count || 0,
|
|
105
|
-
},
|
|
106
|
-
};
|
|
107
|
-
handler(ohlcvEvent);
|
|
108
|
-
}
|
|
109
|
-
else {
|
|
110
|
-
console.debug(`No handler registered for OHLCV subscription: ${subscriptionKey}`);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
catch (error) {
|
|
114
|
-
console.error("Error handling OHLCV event:", error, event);
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
/** Clean up OHLCV handlers on disconnect */
|
|
118
|
-
disconnect() {
|
|
119
|
-
this.ohlcvHandlers.clear();
|
|
120
|
-
super.disconnect();
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
//# sourceMappingURL=ohlcv-ws-client.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ohlcv-ws-client.js","sourceRoot":"","sources":["../../../src/api/websocket/ohlcv-ws-client.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAE3D;;GAEG;AACH,MAAM,OAAO,wBACX,SAAQ,uBAAuB;IAK/B,YAAY,MAAuB;QACjC,KAAK,CAAC,MAAM,CAAC,CAAC;QAHR,kBAAa,GAA6C,IAAI,GAAG,EAAE,CAAC;IAI5E,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CACd,MAAc,EACd,WAAmB,EACnB,QAAgB,EAChB,QAAqC;QAErC,MAAM,OAAO,GAAG,SAAS,MAAM,CAAC,WAAW,EAAE,IAAI,WAAW,CAAC,WAAW,EAAE,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QACvG,MAAM,eAAe,GAAG,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,WAAW,CAAC,WAAW,EAAE,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QAEzG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAElD,+DAA+D;QAC/D,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,oBAAoB,CAClB,MAAc,EACd,WAAmB,EACnB,QAAgB;QAEhB,MAAM,OAAO,GAAG,SAAS,MAAM,CAAC,WAAW,EAAE,IAAI,WAAW,CAAC,WAAW,EAAE,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QACvG,MAAM,eAAe,GAAG,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,WAAW,CAAC,WAAW,EAAE,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QAEzG,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,mEAAmE;IACzD,aAAa,CAAC,OAAY;QAClC,0CAA0C;QAC1C,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,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC5C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,sEAAsE;QACtE,OAAO,CACL,OAAO,CAAC,IAAI,KAAK,OAAO;YACxB,OAAO,CAAC,OAAO;YACf,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;YACnC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;YACpC,OAAO,CAAC,IAAI;YACZ,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CACjC,CAAC;IACJ,CAAC;IAED,oDAAoD;IAC5C,gBAAgB,CAAC,KAAU;QACjC,IAAI,CAAC;YACH,0CAA0C;YAC1C,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9C,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC7D,OAAO;YACT,CAAC;YAED,MAAM,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC,GAAG,YAAY,CAAC;YACvD,MAAM,eAAe,GAAG,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,WAAW,CAAC,WAAW,EAAE,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;YACzG,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YAExD,IAAI,OAAO,EAAE,CAAC;gBACZ,qCAAqC;gBACrC,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC;gBAEhD,0CAA0C;gBAC1C,MAAM,UAAU,GAAe;oBAC7B,MAAM,EAAE,SAAS,CAAC,IAAI,IAAI,MAAM;oBAChC,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,QAAQ;oBACxC,WAAW,EAAE,SAAS,CAAC,YAAY,IAAI,WAAW;oBAClD,WAAW,EAAE;wBACX,CAAC,EAAE,SAAS,CAAC,YAAY,IAAI,CAAC;wBAC9B,CAAC,EAAE,SAAS,CAAC,UAAU,IAAI,CAAC;wBAC5B,CAAC,EAAE,SAAS,CAAC,IAAI,IAAI,GAAG;wBACxB,CAAC,EAAE,SAAS,CAAC,IAAI,IAAI,GAAG;wBACxB,CAAC,EAAE,SAAS,CAAC,GAAG,IAAI,GAAG;wBACvB,CAAC,EAAE,SAAS,CAAC,KAAK,IAAI,GAAG;wBACzB,CAAC,EAAE,SAAS,CAAC,MAAM,IAAI,GAAG;wBAC1B,CAAC,EAAE,SAAS,CAAC,IAAI,IAAI,MAAM;wBAC3B,CAAC,EAAE,SAAS,CAAC,QAAQ,IAAI,QAAQ;wBACjC,CAAC,EAAE,SAAS,CAAC,YAAY,IAAI,CAAC;qBAC/B;iBACF,CAAC;gBAEF,OAAO,CAAC,UAAU,CAAC,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CACX,iDAAiD,eAAe,EAAE,CACnE,CAAC;YACJ,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;IAC5C,UAAU;QACR,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,KAAK,CAAC,UAAU,EAAE,CAAC;IACrB,CAAC;CACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"orders-ws-client.d.ts","sourceRoot":"","sources":["../../../src/api/websocket/orders-ws-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD;;GAEG;AACH,qBAAa,yBACX,SAAQ,uBACR,YAAW,qBAAqB;IAEhC,OAAO,CAAC,aAAa,CACT;gBAEA,MAAM,EAAE,eAAe;IAInC;;;;;;;;;;;;;OAaG;IACH,sBAAsB,CACpB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GACpC,IAAI;IAaP;;;;;OAKG;IACH,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAarE,mEAAmE;IACnE,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAU3C,0DAA0D;IAC1D,OAAO,CAAC,YAAY;IAgBpB,oDAAoD;IACpD,OAAO,CAAC,gBAAgB;IAwDxB,kDAAkD;IAClD,UAAU,IAAI,IAAI;CAInB"}
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
import { BaseWebSocketClientImpl } from "./base-ws-client";
|
|
2
|
-
/**
|
|
3
|
-
* Orders-specific WebSocket client implementation
|
|
4
|
-
*/
|
|
5
|
-
export class OrdersWebSocketClientImpl extends BaseWebSocketClientImpl {
|
|
6
|
-
constructor(config) {
|
|
7
|
-
super(config);
|
|
8
|
-
this.orderHandlers = new Map();
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Subscribe to order events for a specific market and trading mode.
|
|
12
|
-
*
|
|
13
|
-
* @param market - Trading pair symbol (e.g., "BTC-USDC")
|
|
14
|
-
* @param tradingMode - Trading mode ("SPOT" or "MARGIN")
|
|
15
|
-
* @param callback - Function to handle incoming order events
|
|
16
|
-
*
|
|
17
|
-
* @example
|
|
18
|
-
* ```typescript
|
|
19
|
-
* ordersWS.subscribeToOrderEvents("BTC-USDC", "SPOT", (event) => {
|
|
20
|
-
* console.log("Order event:", event.eventType);
|
|
21
|
-
* });
|
|
22
|
-
* ```
|
|
23
|
-
*/
|
|
24
|
-
subscribeToOrderEvents(market, tradingMode, callback) {
|
|
25
|
-
const channel = `orders:${market.toUpperCase()}:${tradingMode.toUpperCase()}`;
|
|
26
|
-
const subscriptionKey = `${market.toUpperCase()}-${tradingMode.toUpperCase()}`;
|
|
27
|
-
this.orderHandlers.set(subscriptionKey, callback);
|
|
28
|
-
// Send subscription message using backend's channel format
|
|
29
|
-
this.send({
|
|
30
|
-
type: "Subscribe",
|
|
31
|
-
channels: [channel],
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Unsubscribe from order events for a specific market and trading mode.
|
|
36
|
-
*
|
|
37
|
-
* @param market - Trading pair symbol (e.g., "BTC-USDC")
|
|
38
|
-
* @param tradingMode - Trading mode ("SPOT" or "MARGIN")
|
|
39
|
-
*/
|
|
40
|
-
unsubscribeFromOrderEvents(market, tradingMode) {
|
|
41
|
-
const channel = `orders:${market.toUpperCase()}:${tradingMode.toUpperCase()}`;
|
|
42
|
-
const subscriptionKey = `${market.toUpperCase()}-${tradingMode.toUpperCase()}`;
|
|
43
|
-
this.orderHandlers.delete(subscriptionKey);
|
|
44
|
-
// Send unsubscription message
|
|
45
|
-
this.send({
|
|
46
|
-
type: "Unsubscribe",
|
|
47
|
-
channels: [channel],
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
/** Handle incoming WebSocket messages with order-specific logic */
|
|
51
|
-
handleMessage(message) {
|
|
52
|
-
// Handle base messages first (PONG, etc.)
|
|
53
|
-
super.handleMessage(message);
|
|
54
|
-
// Handle order-specific Event messages
|
|
55
|
-
if (this.isOrderEvent(message)) {
|
|
56
|
-
this.handleOrderEvent(message);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
/** Check if message is an order event from the backend */
|
|
60
|
-
isOrderEvent(message) {
|
|
61
|
-
if (!message || typeof message !== "object") {
|
|
62
|
-
return false;
|
|
63
|
-
}
|
|
64
|
-
// Backend sends: { type: "Event", channel: "orders:...", data: {...} }
|
|
65
|
-
return (message.type === "Event" &&
|
|
66
|
-
message.channel &&
|
|
67
|
-
typeof message.channel === "string" &&
|
|
68
|
-
message.channel.startsWith("orders:") &&
|
|
69
|
-
message.data &&
|
|
70
|
-
typeof message.data === "object");
|
|
71
|
-
}
|
|
72
|
-
/** Handle order-specific events from the backend */
|
|
73
|
-
handleOrderEvent(event) {
|
|
74
|
-
try {
|
|
75
|
-
// Parse channel: "orders:BTC-USDC:SPOT" or just "orders"
|
|
76
|
-
const channelParts = event.channel.split(":");
|
|
77
|
-
let subscriptionKey;
|
|
78
|
-
if (channelParts.length === 3) {
|
|
79
|
-
// Specific market and mode: "orders:BTC-USDC:SPOT"
|
|
80
|
-
const [, market, tradingMode] = channelParts;
|
|
81
|
-
subscriptionKey = `${market.toUpperCase()}-${tradingMode.toUpperCase()}`;
|
|
82
|
-
}
|
|
83
|
-
else if (channelParts.length === 1) {
|
|
84
|
-
// All orders: "orders"
|
|
85
|
-
subscriptionKey = "all";
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
console.warn("Invalid orders channel format:", event.channel);
|
|
89
|
-
return;
|
|
90
|
-
}
|
|
91
|
-
const handler = this.orderHandlers.get(subscriptionKey);
|
|
92
|
-
if (handler) {
|
|
93
|
-
// Backend order event structure (matching matching_engine::types::OrderEvent)
|
|
94
|
-
const orderData = event.data;
|
|
95
|
-
// Transform to match OrderEvent interface
|
|
96
|
-
const transformedEvent = {
|
|
97
|
-
orderId: orderData.order_id,
|
|
98
|
-
eventType: orderData.event_type,
|
|
99
|
-
details: {
|
|
100
|
-
userId: orderData.data?.user_id,
|
|
101
|
-
applicationId: orderData.data?.application_id,
|
|
102
|
-
orderType: orderData.data?.order_type,
|
|
103
|
-
price: orderData.data?.price,
|
|
104
|
-
quantity: orderData.data?.quantity,
|
|
105
|
-
side: orderData.data?.side,
|
|
106
|
-
tradingMode: orderData.data?.trading_mode,
|
|
107
|
-
tradingPair: orderData.data?.trading_pair,
|
|
108
|
-
tradingPairId: orderData.data?.trading_pair_id,
|
|
109
|
-
cancelledAt: orderData.data?.cancelled_at,
|
|
110
|
-
filledQuantity: orderData.data?.filled_quantity,
|
|
111
|
-
remainingQuantity: orderData.data?.remaining_quantity,
|
|
112
|
-
reason: orderData.data?.reason,
|
|
113
|
-
},
|
|
114
|
-
};
|
|
115
|
-
handler(transformedEvent);
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
console.debug(`No handler registered for orders subscription: ${subscriptionKey}`);
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
catch (error) {
|
|
122
|
-
console.error("Error handling order event:", error, event);
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
/** Clean up order event handlers on disconnect */
|
|
126
|
-
disconnect() {
|
|
127
|
-
this.orderHandlers.clear();
|
|
128
|
-
super.disconnect();
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
//# sourceMappingURL=orders-ws-client.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"orders-ws-client.js","sourceRoot":"","sources":["../../../src/api/websocket/orders-ws-client.ts"],"names":[],"mappings":"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"}
|