@0xmonaco/core 0.2.12 → 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.
package/README.md CHANGED
@@ -276,6 +276,7 @@ class MonacoSDK {
276
276
  readonly websocket: {
277
277
  orders: OrdersWebSocketClient;
278
278
  ohlcv: OHLCVWebSocketClient;
279
+ orderbook: OrderbookWebSocketClient;
279
280
  };
280
281
  readonly walletClient: WalletClient;
281
282
  readonly publicClient: PublicClient;
@@ -283,7 +284,7 @@ class MonacoSDK {
283
284
  constructor(config: SDKConfig);
284
285
 
285
286
  // Authentication
286
- login(clientId: string): Promise<AuthState>;
287
+ login(clientId: string, options?: { connectWebSocket?: boolean }): Promise<AuthState>;
287
288
  logout(): Promise<void>;
288
289
  refreshAuth(): Promise<AuthState>;
289
290
  getAuthState(): AuthState | undefined;
@@ -341,7 +342,9 @@ await sdk.logout(); // Automatically calls revokeToken internally
341
342
  ```
342
343
 
343
344
  **Token Management Methods:**
344
- - `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`)
345
348
  - `logout()` - Revoke token and clear state
346
349
  - `refreshAuth()` - Refresh the access token using the stored refresh token
347
350
  - `isAuthenticated()` - Check if user is authenticated
@@ -513,11 +516,13 @@ try {
513
516
  ```
514
517
 
515
518
  **Error Types:**
519
+ - `MonacoCoreError`: Base error class for all SDK errors
516
520
  - `APIError`: API request failures and communication errors
517
521
  - `ContractError`: Smart contract operation errors
518
522
  - `TransactionError`: Blockchain transaction errors
519
523
  - `OrderError`: Trading order specific errors
520
524
  - `InvalidConfigError`: Configuration validation errors
525
+ - `InvalidStateError`: Invalid state or operation errors
521
526
 
522
527
  ## Development
523
528
 
@@ -115,12 +115,12 @@ export class OrdersWebSocketClientImpl extends BaseWebSocketClientImpl {
115
115
  /** Handle order-specific events from the backend */
116
116
  handleOrderEvent(event) {
117
117
  try {
118
- const backendEvent = event.data; // Parent (has order_id, event_type, etc.)
119
- const orderData = backendEvent.data; // Nested (has bids, asks, etc.)
120
- const tradingPair = orderData.trading_pair;
121
- 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;
122
122
  if (!tradingPair || !tradingMode) {
123
- console.warn("Missing required order event data:", backendEvent);
123
+ console.warn("Missing required order event data (trading_pair or trading_mode):", backendEvent);
124
124
  return;
125
125
  }
126
126
  const subscriptionKey = `${tradingPair.toUpperCase()}-${tradingMode.toUpperCase()}`;
@@ -131,25 +131,25 @@ export class OrdersWebSocketClientImpl extends BaseWebSocketClientImpl {
131
131
  let eventData;
132
132
  switch (backendEvent.event_type) {
133
133
  case "OrderPlaced":
134
- eventData = keysToCamelCase(orderData);
134
+ eventData = keysToCamelCase(backendEvent.data);
135
135
  break;
136
136
  case "OrderMatched":
137
- eventData = keysToCamelCase(orderData);
137
+ eventData = keysToCamelCase(backendEvent.data);
138
138
  break;
139
139
  case "OrderPartiallyFilled":
140
- eventData = keysToCamelCase(orderData);
140
+ eventData = keysToCamelCase(backendEvent.data);
141
141
  break;
142
142
  case "OrderFilled":
143
- eventData = keysToCamelCase(orderData);
143
+ eventData = keysToCamelCase(backendEvent.data);
144
144
  break;
145
145
  case "OrderCancelled":
146
- eventData = keysToCamelCase(orderData);
146
+ eventData = keysToCamelCase(backendEvent.data);
147
147
  break;
148
148
  case "OrderRejected":
149
- eventData = keysToCamelCase(orderData);
149
+ eventData = keysToCamelCase(backendEvent.data);
150
150
  break;
151
151
  case "OrderExpired":
152
- eventData = keysToCamelCase(orderData);
152
+ eventData = keysToCamelCase(backendEvent.data);
153
153
  break;
154
154
  default:
155
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":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@0xmonaco/core",
3
- "version": "0.2.12",
3
+ "version": "0.2.13",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",