@arbiwallet/contracts 1.0.59 → 1.0.62

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/gen/user.ts CHANGED
@@ -126,6 +126,42 @@ export interface CrmExchangeHttpResponse {
126
126
  bodyJson: string;
127
127
  }
128
128
 
129
+ export interface SubmitWalletCrmExchangeOrderRequest {
130
+ walletUserId: number;
131
+ inputAmount: number;
132
+ outputAmount: number;
133
+ inputCurrency: number;
134
+ outputCurrency: number;
135
+ withdrawType: number;
136
+ receiveBank?: number | undefined;
137
+ exchangeRateDisplay?: number | undefined;
138
+ sendCurrencyShort?: string | undefined;
139
+ receiveCurrencyShort?: string | undefined;
140
+ }
141
+
142
+ export interface SubmitWalletCrmExchangeOrderResponse {
143
+ success: boolean;
144
+ orderId?: number | undefined;
145
+ message?: string | undefined;
146
+ }
147
+
148
+ export interface ListWalletExchangeRecentPairsRequest {
149
+ walletUserId: number;
150
+ /** По умолчанию 20, максимум обрезается на сервисе. */
151
+ limit: number;
152
+ }
153
+
154
+ export interface WalletExchangeRecentPairItem {
155
+ sendCurrencyShort: string;
156
+ receiveCurrencyShort: string;
157
+ lastInputAmount: number;
158
+ lastSubmittedAtUnixMs: number;
159
+ }
160
+
161
+ export interface ListWalletExchangeRecentPairsResponse {
162
+ pairs: WalletExchangeRecentPairItem[];
163
+ }
164
+
129
165
  export interface UserBalance {
130
166
  asset: string;
131
167
  network: string;
@@ -167,6 +203,18 @@ export interface UserServiceClient {
167
203
  /** HTTP к CRM Exchange: сессия и X-Session-ID только внутри user-service. */
168
204
 
169
205
  crmExchangeHttp(request: CrmExchangeHttpRequest): Observable<CrmExchangeHttpResponse>;
206
+
207
+ /** Создание/получение CRM-клиента по wallet_user_id и создание заявки на обмен (два шага к CRM внутри сервиса). */
208
+
209
+ submitWalletCrmExchangeOrder(
210
+ request: SubmitWalletCrmExchangeOrderRequest,
211
+ ): Observable<SubmitWalletCrmExchangeOrderResponse>;
212
+
213
+ /** Уникальные валютные пары из последних заявок на обмен (по БД user-service), без дубликатов пар. */
214
+
215
+ listWalletExchangeRecentPairs(
216
+ request: ListWalletExchangeRecentPairsRequest,
217
+ ): Observable<ListWalletExchangeRecentPairsResponse>;
170
218
  }
171
219
 
172
220
  export interface UserServiceController {
@@ -198,6 +246,24 @@ export interface UserServiceController {
198
246
  crmExchangeHttp(
199
247
  request: CrmExchangeHttpRequest,
200
248
  ): Promise<CrmExchangeHttpResponse> | Observable<CrmExchangeHttpResponse> | CrmExchangeHttpResponse;
249
+
250
+ /** Создание/получение CRM-клиента по wallet_user_id и создание заявки на обмен (два шага к CRM внутри сервиса). */
251
+
252
+ submitWalletCrmExchangeOrder(
253
+ request: SubmitWalletCrmExchangeOrderRequest,
254
+ ):
255
+ | Promise<SubmitWalletCrmExchangeOrderResponse>
256
+ | Observable<SubmitWalletCrmExchangeOrderResponse>
257
+ | SubmitWalletCrmExchangeOrderResponse;
258
+
259
+ /** Уникальные валютные пары из последних заявок на обмен (по БД user-service), без дубликатов пар. */
260
+
261
+ listWalletExchangeRecentPairs(
262
+ request: ListWalletExchangeRecentPairsRequest,
263
+ ):
264
+ | Promise<ListWalletExchangeRecentPairsResponse>
265
+ | Observable<ListWalletExchangeRecentPairsResponse>
266
+ | ListWalletExchangeRecentPairsResponse;
201
267
  }
202
268
 
203
269
  export function UserServiceControllerMethods() {
@@ -210,6 +276,8 @@ export function UserServiceControllerMethods() {
210
276
  "resolveUserForTransfer",
211
277
  "getCrmSession",
212
278
  "crmExchangeHttp",
279
+ "submitWalletCrmExchangeOrder",
280
+ "listWalletExchangeRecentPairs",
213
281
  ];
214
282
  for (const method of grpcMethods) {
215
283
  const descriptor: any = Reflect.getOwnPropertyDescriptor(constructor.prototype, method);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@arbiwallet/contracts",
3
3
  "descriptions": "Generate and manage smart contracts for ArbiWallet",
4
- "version": "1.0.59",
4
+ "version": "1.0.62",
5
5
  "scripts": {
6
6
  "generate": "protoc -I ./proto ./proto/*.proto --ts_proto_out=./gen --ts_proto_opt=nestJs=true,package=omit"
7
7
  },
package/proto/user.proto CHANGED
@@ -12,6 +12,10 @@ service UserService {
12
12
  rpc GetCrmSession (GetCrmSessionRequest) returns (GetCrmSessionResponse);
13
13
  // HTTP к CRM Exchange: сессия и X-Session-ID только внутри user-service.
14
14
  rpc CrmExchangeHttp (CrmExchangeHttpRequest) returns (CrmExchangeHttpResponse);
15
+ // Создание/получение CRM-клиента по wallet_user_id и создание заявки на обмен (два шага к CRM внутри сервиса).
16
+ rpc SubmitWalletCrmExchangeOrder (SubmitWalletCrmExchangeOrderRequest) returns (SubmitWalletCrmExchangeOrderResponse);
17
+ // Уникальные валютные пары из последних заявок на обмен (по БД user-service), без дубликатов пар.
18
+ rpc ListWalletExchangeRecentPairs (ListWalletExchangeRecentPairsRequest) returns (ListWalletExchangeRecentPairsResponse);
15
19
  }
16
20
 
17
21
  enum UserStatus {
@@ -126,6 +130,42 @@ message CrmExchangeHttpResponse {
126
130
  string body_json = 2;
127
131
  }
128
132
 
133
+ message SubmitWalletCrmExchangeOrderRequest {
134
+ int32 wallet_user_id = 1;
135
+ double input_amount = 2;
136
+ double output_amount = 3;
137
+ int32 input_currency = 4;
138
+ int32 output_currency = 5;
139
+ int32 withdraw_type = 6;
140
+ optional int32 receive_bank = 7;
141
+ optional double exchange_rate_display = 8;
142
+ optional string send_currency_short = 9;
143
+ optional string receive_currency_short = 10;
144
+ }
145
+
146
+ message SubmitWalletCrmExchangeOrderResponse {
147
+ bool success = 1;
148
+ optional int32 order_id = 2;
149
+ optional string message = 3;
150
+ }
151
+
152
+ message ListWalletExchangeRecentPairsRequest {
153
+ int32 wallet_user_id = 1;
154
+ // По умолчанию 20, максимум обрезается на сервисе.
155
+ int32 limit = 2;
156
+ }
157
+
158
+ message WalletExchangeRecentPairItem {
159
+ string send_currency_short = 1;
160
+ string receive_currency_short = 2;
161
+ double last_input_amount = 3;
162
+ int64 last_submitted_at_unix_ms = 4;
163
+ }
164
+
165
+ message ListWalletExchangeRecentPairsResponse {
166
+ repeated WalletExchangeRecentPairItem pairs = 1;
167
+ }
168
+
129
169
  message UserBalance {
130
170
  string asset = 1;
131
171
  string network = 2;