b5-api-client 0.0.30 → 0.0.31

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.
@@ -1,5 +1,5 @@
1
1
  import { AxiosRequestConfig } from 'axios';
2
- import { CreateOrderRequest, CreateUserRequest, Order, OrderResponse, TakeOrderRequest, TestEventParams, UpdateOrderRequest, TransactionStatusResponse, RateUserRequest, OrderEventsResponse, PushNotificationsRegisterRequest, ConfigResponse, DashboardMetricsResponse, UsersResponse, GetOrdersParams, CreateDisputeRequest, DisputesResponse, OrderOffersResponse, TransactionRequest, KioscoinOperationResponse, UpdateUserSettingsRequest, NotificationsResponse, VerifyEmailRequest, CreateSessionRequest, CreateSessionResponse } from './types';
2
+ import { CreateOrderRequest, CreateUserRequest, Order, OrderResponse, TakeOrderRequest, TestEventParams, UpdateOrderRequest, TransactionStatusResponse, RateUserRequest, OrderEventsResponse, PushNotificationsRegisterRequest, ConfigResponse, DashboardMetricsResponse, UsersResponse, GetOrdersParams, CreateDisputeRequest, DisputesResponse, OrderOffersResponse, TransactionRequest, KioscoinOperationResponse, UpdateUserSettingsRequest, NotificationsResponse, VerifyEmailRequest, CreateSessionRequest, CreateSessionResponse, SaveOpsLogRequest, SaveOpsLogResponse } from './types';
3
3
  import { AuthTokenProvider } from './auth/AuthTokenProvider';
4
4
  export interface RequestConfigWithRetry extends AxiosRequestConfig {
5
5
  _retry?: boolean;
@@ -37,6 +37,13 @@ declare class P2PMarketplaceAPIClient {
37
37
  releaseFunds(order: Order, testParams?: TestEventParams, headers?: Record<string, string>): Promise<string>;
38
38
  getTransactionStatus(txHash: string, headers?: Record<string, string>): Promise<TransactionStatusResponse>;
39
39
  createDispute(request: CreateDisputeRequest, headers?: Record<string, string>): Promise<DisputesResponse>;
40
+ /**
41
+ * Save a UserOperation receipt to the database
42
+ * @param request - The SaveOpsLogRequest containing chainId, userOp, and optional orderId/opsType
43
+ * @param headers - Optional custom headers
44
+ * @returns SaveOpsLogResponse with the saved log id and success status
45
+ */
46
+ saveOpsLog(request: SaveOpsLogRequest, headers?: Record<string, string>): Promise<SaveOpsLogResponse>;
40
47
  /**
41
48
  * Create or refresh a session with Firebase ID token
42
49
  * Sets a session cookie that will be used for WebSocket authentication
@@ -308,6 +308,19 @@ class P2PMarketplaceAPIClient {
308
308
  return this.post(url, request, headers);
309
309
  });
310
310
  }
311
+ // OpsLog
312
+ /**
313
+ * Save a UserOperation receipt to the database
314
+ * @param request - The SaveOpsLogRequest containing chainId, userOp, and optional orderId/opsType
315
+ * @param headers - Optional custom headers
316
+ * @returns SaveOpsLogResponse with the saved log id and success status
317
+ */
318
+ saveOpsLog(request, headers) {
319
+ return __awaiter(this, void 0, void 0, function* () {
320
+ const url = '/api/ops/log';
321
+ return this.post(url, request, headers);
322
+ });
323
+ }
311
324
  // Session Management
312
325
  /**
313
326
  * Create or refresh a session with Firebase ID token
package/dist/types.d.ts CHANGED
@@ -387,3 +387,14 @@ export interface NotificationDto {
387
387
  export interface NotificationsResponse {
388
388
  notifications: NotificationDto[];
389
389
  }
390
+ export type OpsType = 'LOCK' | 'RELEASE' | 'TRANSFER';
391
+ export interface SaveOpsLogRequest {
392
+ chainId: number;
393
+ userOp: Record<string, unknown>;
394
+ orderId?: string;
395
+ opsType?: OpsType;
396
+ }
397
+ export interface SaveOpsLogResponse {
398
+ id: string;
399
+ success: boolean;
400
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "b5-api-client",
3
- "version": "0.0.30",
3
+ "version": "0.0.31",
4
4
  "description": "Escrow Backend API client",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,5 +1,5 @@
1
1
  import axios, { AxiosError, AxiosInstance, AxiosRequestConfig } from 'axios';
2
- import { CreateOrderRequest, CreateUserRequest, Order, OrderResponse, TakeOrderRequest, TestEventParams, UpdateOrderRequest, TransactionStatusResponse, RateUserRequest, OrderEventsResponse, PushNotificationsRegisterRequest, ConfigResponse, DashboardMetricsResponse, UsersResponse, GetOrdersParams, CreateDisputeRequest, DisputesResponse, OrderOffersResponse, TransactionRequest, KioscoinOperationResponse, UpdateUserSettingsRequest, NotificationsResponse, VerifyEmailRequest, CreateSessionRequest, CreateSessionResponse } from './types';
2
+ import { CreateOrderRequest, CreateUserRequest, Order, OrderResponse, TakeOrderRequest, TestEventParams, UpdateOrderRequest, TransactionStatusResponse, RateUserRequest, OrderEventsResponse, PushNotificationsRegisterRequest, ConfigResponse, DashboardMetricsResponse, UsersResponse, GetOrdersParams, CreateDisputeRequest, DisputesResponse, OrderOffersResponse, TransactionRequest, KioscoinOperationResponse, UpdateUserSettingsRequest, NotificationsResponse, VerifyEmailRequest, CreateSessionRequest, CreateSessionResponse, SaveOpsLogRequest, SaveOpsLogResponse } from './types';
3
3
  import { AuthTokenProvider } from './auth/AuthTokenProvider';
4
4
  import { isPlainObject, camelCase, snakeCase, transform } from 'lodash';
5
5
 
@@ -291,6 +291,19 @@ class P2PMarketplaceAPIClient {
291
291
  return this.post<DisputesResponse>(url, request, headers);
292
292
  }
293
293
 
294
+ // OpsLog
295
+
296
+ /**
297
+ * Save a UserOperation receipt to the database
298
+ * @param request - The SaveOpsLogRequest containing chainId, userOp, and optional orderId/opsType
299
+ * @param headers - Optional custom headers
300
+ * @returns SaveOpsLogResponse with the saved log id and success status
301
+ */
302
+ public async saveOpsLog(request: SaveOpsLogRequest, headers?: Record<string, string>): Promise<SaveOpsLogResponse> {
303
+ const url = '/api/ops/log';
304
+ return this.post<SaveOpsLogResponse>(url, request, headers);
305
+ }
306
+
294
307
  // Session Management
295
308
 
296
309
  /**
package/src/types.ts CHANGED
@@ -473,3 +473,18 @@ export interface NotificationDto {
473
473
  export interface NotificationsResponse {
474
474
  notifications: NotificationDto[];
475
475
  }
476
+
477
+ // OpsLog types
478
+ export type OpsType = 'LOCK' | 'RELEASE' | 'TRANSFER';
479
+
480
+ export interface SaveOpsLogRequest {
481
+ chainId: number;
482
+ userOp: Record<string, unknown>;
483
+ orderId?: string;
484
+ opsType?: OpsType;
485
+ }
486
+
487
+ export interface SaveOpsLogResponse {
488
+ id: string;
489
+ success: boolean;
490
+ }