@dashevo/dapi-grpc 0.25.12 → 0.25.15
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/.mocharc.yml +1 -2
- package/Cargo.toml +18 -11
- package/build.rs +154 -34
- package/clients/platform/v0/nodejs/platform_pbjs.js +26 -7
- package/clients/platform/v0/nodejs/platform_protoc.js +28 -2
- package/clients/platform/v0/rust/platform_example.rs +1 -1
- package/clients/platform/v0/web/platform_pb.d.ts +6 -0
- package/clients/platform/v0/web/platform_pb.js +28 -2
- package/lib/test/bootstrap.js +12 -10
- package/package.json +3 -3
- package/protos/platform/v0/platform.proto +63 -131
- package/src/deserialization.rs +34 -0
- package/src/lib.rs +9 -0
- package/src/platform/proto/org.dash.platform.dapi.v0.rs +369 -2
- package/src/platform/versioning.rs +11 -0
|
@@ -7,22 +7,30 @@ package org.dash.platform.dapi.v0;
|
|
|
7
7
|
import "google/protobuf/timestamp.proto";
|
|
8
8
|
|
|
9
9
|
service Platform {
|
|
10
|
-
rpc broadcastStateTransition
|
|
11
|
-
|
|
12
|
-
rpc
|
|
13
|
-
rpc
|
|
14
|
-
rpc
|
|
10
|
+
rpc broadcastStateTransition(BroadcastStateTransitionRequest)
|
|
11
|
+
returns (BroadcastStateTransitionResponse);
|
|
12
|
+
rpc getIdentity(GetIdentityRequest) returns (GetIdentityResponse);
|
|
13
|
+
rpc getIdentities(GetIdentitiesRequest) returns (GetIdentitiesResponse);
|
|
14
|
+
rpc getIdentityKeys(GetIdentityKeysRequest) returns (GetIdentityKeysResponse);
|
|
15
|
+
rpc getIdentityBalance(GetIdentityBalanceRequest)
|
|
16
|
+
returns (GetIdentityBalanceResponse);
|
|
15
17
|
rpc getIdentityBalanceAndRevision(GetIdentityBalanceAndRevisionRequest)
|
|
16
|
-
|
|
17
|
-
rpc getProofs
|
|
18
|
-
rpc getDataContract
|
|
19
|
-
rpc getDataContractHistory
|
|
20
|
-
|
|
21
|
-
rpc
|
|
22
|
-
|
|
23
|
-
rpc
|
|
24
|
-
rpc
|
|
25
|
-
|
|
18
|
+
returns (GetIdentityBalanceAndRevisionResponse);
|
|
19
|
+
rpc getProofs(GetProofsRequest) returns (GetProofsResponse);
|
|
20
|
+
rpc getDataContract(GetDataContractRequest) returns (GetDataContractResponse);
|
|
21
|
+
rpc getDataContractHistory(GetDataContractHistoryRequest)
|
|
22
|
+
returns (GetDataContractHistoryResponse);
|
|
23
|
+
rpc getDataContracts(GetDataContractsRequest)
|
|
24
|
+
returns (GetDataContractsResponse);
|
|
25
|
+
rpc getDocuments(GetDocumentsRequest) returns (GetDocumentsResponse);
|
|
26
|
+
rpc getIdentitiesByPublicKeyHashes(GetIdentitiesByPublicKeyHashesRequest)
|
|
27
|
+
returns (GetIdentitiesByPublicKeyHashesResponse);
|
|
28
|
+
rpc getIdentityByPublicKeyHash(GetIdentityByPublicKeyHashRequest)
|
|
29
|
+
returns (GetIdentityByPublicKeyHashResponse);
|
|
30
|
+
rpc waitForStateTransitionResult(WaitForStateTransitionResultRequest)
|
|
31
|
+
returns (WaitForStateTransitionResultResponse);
|
|
32
|
+
rpc getConsensusParams(GetConsensusParamsRequest)
|
|
33
|
+
returns (GetConsensusParamsResponse);
|
|
26
34
|
rpc getProtocolVersionUpgradeState(GetProtocolVersionUpgradeStateRequest) returns (GetProtocolVersionUpgradeStateResponse);
|
|
27
35
|
rpc getProtocolVersionUpgradeVoteStatus(GetProtocolVersionUpgradeVoteStatusRequest) returns (GetProtocolVersionUpgradeVoteStatusResponse);
|
|
28
36
|
rpc getEpochsInfo(GetEpochsInfoRequest) returns (GetEpochsInfoResponse);
|
|
@@ -52,13 +60,9 @@ message StateTransitionBroadcastError {
|
|
|
52
60
|
bytes data = 3;
|
|
53
61
|
}
|
|
54
62
|
|
|
55
|
-
message BroadcastStateTransitionRequest {
|
|
56
|
-
bytes state_transition = 1;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
message BroadcastStateTransitionResponse {
|
|
63
|
+
message BroadcastStateTransitionRequest { bytes state_transition = 1; }
|
|
60
64
|
|
|
61
|
-
}
|
|
65
|
+
message BroadcastStateTransitionResponse {}
|
|
62
66
|
|
|
63
67
|
message GetIdentityRequest {
|
|
64
68
|
|
|
@@ -67,9 +71,7 @@ message GetIdentityRequest {
|
|
|
67
71
|
bool prove = 2;
|
|
68
72
|
}
|
|
69
73
|
|
|
70
|
-
oneof version {
|
|
71
|
-
GetIdentityRequestV0 v0 = 1;
|
|
72
|
-
}
|
|
74
|
+
oneof version { GetIdentityRequestV0 v0 = 1; }
|
|
73
75
|
}
|
|
74
76
|
|
|
75
77
|
message GetIdentityBalanceRequest {
|
|
@@ -79,12 +81,9 @@ message GetIdentityBalanceRequest {
|
|
|
79
81
|
bool prove = 2;
|
|
80
82
|
}
|
|
81
83
|
|
|
82
|
-
oneof version {
|
|
83
|
-
GetIdentityBalanceRequestV0 v0 = 1;
|
|
84
|
-
}
|
|
84
|
+
oneof version { GetIdentityBalanceRequestV0 v0 = 1; }
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
|
|
88
87
|
message GetIdentityBalanceAndRevisionRequest {
|
|
89
88
|
|
|
90
89
|
message GetIdentityBalanceAndRevisionRequestV0 {
|
|
@@ -92,9 +91,7 @@ message GetIdentityBalanceAndRevisionRequest {
|
|
|
92
91
|
bool prove = 2;
|
|
93
92
|
}
|
|
94
93
|
|
|
95
|
-
oneof version {
|
|
96
|
-
GetIdentityBalanceAndRevisionRequestV0 v0 = 1;
|
|
97
|
-
}
|
|
94
|
+
oneof version { GetIdentityBalanceAndRevisionRequestV0 v0 = 1; }
|
|
98
95
|
}
|
|
99
96
|
|
|
100
97
|
message GetIdentityResponse {
|
|
@@ -107,9 +104,7 @@ message GetIdentityResponse {
|
|
|
107
104
|
ResponseMetadata metadata = 3;
|
|
108
105
|
}
|
|
109
106
|
|
|
110
|
-
oneof version {
|
|
111
|
-
GetIdentityResponseV0 v0 = 1;
|
|
112
|
-
}
|
|
107
|
+
oneof version { GetIdentityResponseV0 v0 = 1; }
|
|
113
108
|
}
|
|
114
109
|
|
|
115
110
|
message GetIdentitiesRequest {
|
|
@@ -119,25 +114,19 @@ message GetIdentitiesRequest {
|
|
|
119
114
|
bool prove = 2;
|
|
120
115
|
}
|
|
121
116
|
|
|
122
|
-
oneof version {
|
|
123
|
-
GetIdentitiesRequestV0 v0 = 1;
|
|
124
|
-
}
|
|
117
|
+
oneof version { GetIdentitiesRequestV0 v0 = 1; }
|
|
125
118
|
}
|
|
126
119
|
|
|
127
120
|
message GetIdentitiesResponse {
|
|
128
121
|
|
|
129
|
-
message IdentityValue {
|
|
130
|
-
bytes value = 1;
|
|
131
|
-
}
|
|
122
|
+
message IdentityValue { bytes value = 1; }
|
|
132
123
|
|
|
133
124
|
message IdentityEntry {
|
|
134
125
|
bytes key = 1;
|
|
135
126
|
IdentityValue value = 2;
|
|
136
127
|
}
|
|
137
128
|
|
|
138
|
-
message Identities {
|
|
139
|
-
repeated IdentityEntry identity_entries = 1;
|
|
140
|
-
}
|
|
129
|
+
message Identities { repeated IdentityEntry identity_entries = 1; }
|
|
141
130
|
|
|
142
131
|
message GetIdentitiesResponseV0 {
|
|
143
132
|
oneof result {
|
|
@@ -147,9 +136,7 @@ message GetIdentitiesResponse {
|
|
|
147
136
|
ResponseMetadata metadata = 3;
|
|
148
137
|
}
|
|
149
138
|
|
|
150
|
-
oneof version {
|
|
151
|
-
GetIdentitiesResponseV0 v0 = 1;
|
|
152
|
-
}
|
|
139
|
+
oneof version { GetIdentitiesResponseV0 v0 = 1; }
|
|
153
140
|
}
|
|
154
141
|
|
|
155
142
|
message GetIdentityBalanceResponse {
|
|
@@ -162,9 +149,7 @@ message GetIdentityBalanceResponse {
|
|
|
162
149
|
ResponseMetadata metadata = 3;
|
|
163
150
|
}
|
|
164
151
|
|
|
165
|
-
oneof version {
|
|
166
|
-
GetIdentityBalanceResponseV0 v0 = 1;
|
|
167
|
-
}
|
|
152
|
+
oneof version { GetIdentityBalanceResponseV0 v0 = 1; }
|
|
168
153
|
}
|
|
169
154
|
|
|
170
155
|
message GetIdentityBalanceAndRevisionResponse {
|
|
@@ -182,9 +167,7 @@ message GetIdentityBalanceAndRevisionResponse {
|
|
|
182
167
|
ResponseMetadata metadata = 3;
|
|
183
168
|
}
|
|
184
169
|
|
|
185
|
-
oneof version {
|
|
186
|
-
GetIdentityBalanceAndRevisionResponseV0 v0 = 1;
|
|
187
|
-
}
|
|
170
|
+
oneof version { GetIdentityBalanceAndRevisionResponseV0 v0 = 1; }
|
|
188
171
|
}
|
|
189
172
|
|
|
190
173
|
message KeyRequestType {
|
|
@@ -195,16 +178,11 @@ message KeyRequestType {
|
|
|
195
178
|
}
|
|
196
179
|
}
|
|
197
180
|
|
|
198
|
-
message AllKeys {
|
|
199
|
-
}
|
|
181
|
+
message AllKeys {}
|
|
200
182
|
|
|
201
|
-
message SpecificKeys {
|
|
202
|
-
repeated uint32 key_ids = 1;
|
|
203
|
-
}
|
|
183
|
+
message SpecificKeys { repeated uint32 key_ids = 1; }
|
|
204
184
|
|
|
205
|
-
message SearchKey {
|
|
206
|
-
map<uint32, SecurityLevelMap> purpose_map = 1;
|
|
207
|
-
}
|
|
185
|
+
message SearchKey { map<uint32, SecurityLevelMap> purpose_map = 1; }
|
|
208
186
|
|
|
209
187
|
message SecurityLevelMap {
|
|
210
188
|
enum KeyKindRequestType {
|
|
@@ -224,17 +202,13 @@ message GetIdentityKeysRequest {
|
|
|
224
202
|
bool prove = 5;
|
|
225
203
|
}
|
|
226
204
|
|
|
227
|
-
oneof version {
|
|
228
|
-
GetIdentityKeysRequestV0 v0 = 1;
|
|
229
|
-
}
|
|
205
|
+
oneof version { GetIdentityKeysRequestV0 v0 = 1; }
|
|
230
206
|
}
|
|
231
207
|
|
|
232
208
|
message GetIdentityKeysResponse {
|
|
233
209
|
|
|
234
210
|
message GetIdentityKeysResponseV0 {
|
|
235
|
-
message Keys {
|
|
236
|
-
repeated bytes keys_bytes = 1;
|
|
237
|
-
}
|
|
211
|
+
message Keys { repeated bytes keys_bytes = 1; }
|
|
238
212
|
|
|
239
213
|
oneof result {
|
|
240
214
|
Keys keys = 1;
|
|
@@ -243,9 +217,7 @@ message GetIdentityKeysResponse {
|
|
|
243
217
|
ResponseMetadata metadata = 3;
|
|
244
218
|
}
|
|
245
219
|
|
|
246
|
-
oneof version {
|
|
247
|
-
GetIdentityKeysResponseV0 v0 = 1;
|
|
248
|
-
}
|
|
220
|
+
oneof version { GetIdentityKeysResponseV0 v0 = 1; }
|
|
249
221
|
}
|
|
250
222
|
|
|
251
223
|
message GetProofsRequest {
|
|
@@ -267,28 +239,23 @@ message GetProofsRequest {
|
|
|
267
239
|
Type request_type = 2;
|
|
268
240
|
}
|
|
269
241
|
|
|
270
|
-
message ContractRequest {
|
|
271
|
-
bytes contract_id = 1;
|
|
272
|
-
}
|
|
242
|
+
message ContractRequest { bytes contract_id = 1; }
|
|
273
243
|
|
|
274
244
|
repeated IdentityRequest identities = 1;
|
|
275
245
|
repeated ContractRequest contracts = 2;
|
|
276
246
|
repeated DocumentRequest documents = 3;
|
|
277
247
|
}
|
|
278
248
|
|
|
279
|
-
oneof version {
|
|
280
|
-
GetProofsRequestV0 v0 = 1;
|
|
281
|
-
}
|
|
249
|
+
oneof version { GetProofsRequestV0 v0 = 1; }
|
|
282
250
|
}
|
|
283
251
|
|
|
284
252
|
message GetProofsResponse {
|
|
285
253
|
message GetProofsResponseV0 {
|
|
286
|
-
Proof proof = 1;
|
|
254
|
+
oneof result { Proof proof = 1; }
|
|
255
|
+
|
|
287
256
|
ResponseMetadata metadata = 2;
|
|
288
257
|
}
|
|
289
|
-
oneof version {
|
|
290
|
-
GetProofsResponseV0 v0 = 1;
|
|
291
|
-
}
|
|
258
|
+
oneof version { GetProofsResponseV0 v0 = 1; }
|
|
292
259
|
}
|
|
293
260
|
|
|
294
261
|
message GetDataContractRequest {
|
|
@@ -296,9 +263,7 @@ message GetDataContractRequest {
|
|
|
296
263
|
bytes id = 1;
|
|
297
264
|
bool prove = 2;
|
|
298
265
|
}
|
|
299
|
-
oneof version {
|
|
300
|
-
GetDataContractRequestV0 v0 = 1;
|
|
301
|
-
}
|
|
266
|
+
oneof version { GetDataContractRequestV0 v0 = 1; }
|
|
302
267
|
}
|
|
303
268
|
|
|
304
269
|
message GetDataContractResponse {
|
|
@@ -309,9 +274,7 @@ message GetDataContractResponse {
|
|
|
309
274
|
}
|
|
310
275
|
ResponseMetadata metadata = 3;
|
|
311
276
|
}
|
|
312
|
-
oneof version {
|
|
313
|
-
GetDataContractResponseV0 v0 = 1;
|
|
314
|
-
}
|
|
277
|
+
oneof version { GetDataContractResponseV0 v0 = 1; }
|
|
315
278
|
}
|
|
316
279
|
|
|
317
280
|
message GetDataContractsRequest {
|
|
@@ -319,9 +282,7 @@ message GetDataContractsRequest {
|
|
|
319
282
|
repeated bytes ids = 1;
|
|
320
283
|
bool prove = 2;
|
|
321
284
|
}
|
|
322
|
-
oneof version {
|
|
323
|
-
GetDataContractsRequestV0 v0 = 1;
|
|
324
|
-
}
|
|
285
|
+
oneof version { GetDataContractsRequestV0 v0 = 1; }
|
|
325
286
|
}
|
|
326
287
|
|
|
327
288
|
message GetDataContractsResponse {
|
|
@@ -333,7 +294,6 @@ message GetDataContractsResponse {
|
|
|
333
294
|
repeated DataContractEntry data_contract_entries = 1;
|
|
334
295
|
}
|
|
335
296
|
|
|
336
|
-
|
|
337
297
|
message GetDataContractsResponseV0 {
|
|
338
298
|
oneof result {
|
|
339
299
|
DataContracts data_contracts = 1;
|
|
@@ -341,9 +301,7 @@ message GetDataContractsResponse {
|
|
|
341
301
|
}
|
|
342
302
|
ResponseMetadata metadata = 3;
|
|
343
303
|
}
|
|
344
|
-
oneof version {
|
|
345
|
-
GetDataContractsResponseV0 v0 = 1;
|
|
346
|
-
}
|
|
304
|
+
oneof version { GetDataContractsResponseV0 v0 = 1; }
|
|
347
305
|
}
|
|
348
306
|
|
|
349
307
|
message GetDataContractHistoryRequest {
|
|
@@ -354,9 +312,7 @@ message GetDataContractHistoryRequest {
|
|
|
354
312
|
uint64 start_at_ms = 4;
|
|
355
313
|
bool prove = 5;
|
|
356
314
|
}
|
|
357
|
-
oneof version {
|
|
358
|
-
GetDataContractHistoryRequestV0 v0 = 1;
|
|
359
|
-
}
|
|
315
|
+
oneof version { GetDataContractHistoryRequestV0 v0 = 1; }
|
|
360
316
|
}
|
|
361
317
|
|
|
362
318
|
message GetDataContractHistoryResponse {
|
|
@@ -377,9 +333,7 @@ message GetDataContractHistoryResponse {
|
|
|
377
333
|
|
|
378
334
|
ResponseMetadata metadata = 3;
|
|
379
335
|
}
|
|
380
|
-
oneof version {
|
|
381
|
-
GetDataContractHistoryResponseV0 v0 = 1;
|
|
382
|
-
}
|
|
336
|
+
oneof version { GetDataContractHistoryResponseV0 v0 = 1; }
|
|
383
337
|
}
|
|
384
338
|
|
|
385
339
|
message GetDocumentsRequest {
|
|
@@ -395,16 +349,12 @@ message GetDocumentsRequest {
|
|
|
395
349
|
}
|
|
396
350
|
bool prove = 8;
|
|
397
351
|
}
|
|
398
|
-
oneof version {
|
|
399
|
-
GetDocumentsRequestV0 v0 = 1;
|
|
400
|
-
}
|
|
352
|
+
oneof version { GetDocumentsRequestV0 v0 = 1; }
|
|
401
353
|
}
|
|
402
354
|
|
|
403
355
|
message GetDocumentsResponse {
|
|
404
356
|
message GetDocumentsResponseV0 {
|
|
405
|
-
message Documents {
|
|
406
|
-
repeated bytes documents = 1;
|
|
407
|
-
}
|
|
357
|
+
message Documents { repeated bytes documents = 1; }
|
|
408
358
|
|
|
409
359
|
oneof result {
|
|
410
360
|
Documents documents = 1;
|
|
@@ -412,9 +362,7 @@ message GetDocumentsResponse {
|
|
|
412
362
|
}
|
|
413
363
|
ResponseMetadata metadata = 3;
|
|
414
364
|
}
|
|
415
|
-
oneof version {
|
|
416
|
-
GetDocumentsResponseV0 v0 = 1;
|
|
417
|
-
}
|
|
365
|
+
oneof version { GetDocumentsResponseV0 v0 = 1; }
|
|
418
366
|
}
|
|
419
367
|
|
|
420
368
|
message GetIdentitiesByPublicKeyHashesRequest {
|
|
@@ -422,9 +370,7 @@ message GetIdentitiesByPublicKeyHashesRequest {
|
|
|
422
370
|
repeated bytes public_key_hashes = 1;
|
|
423
371
|
bool prove = 2;
|
|
424
372
|
}
|
|
425
|
-
oneof version {
|
|
426
|
-
GetIdentitiesByPublicKeyHashesRequestV0 v0 = 1;
|
|
427
|
-
}
|
|
373
|
+
oneof version { GetIdentitiesByPublicKeyHashesRequestV0 v0 = 1; }
|
|
428
374
|
}
|
|
429
375
|
|
|
430
376
|
message GetIdentitiesByPublicKeyHashesResponse {
|
|
@@ -445,9 +391,7 @@ message GetIdentitiesByPublicKeyHashesResponse {
|
|
|
445
391
|
|
|
446
392
|
ResponseMetadata metadata = 3;
|
|
447
393
|
}
|
|
448
|
-
oneof version {
|
|
449
|
-
GetIdentitiesByPublicKeyHashesResponseV0 v0 = 1;
|
|
450
|
-
}
|
|
394
|
+
oneof version { GetIdentitiesByPublicKeyHashesResponseV0 v0 = 1; }
|
|
451
395
|
}
|
|
452
396
|
|
|
453
397
|
message GetIdentityByPublicKeyHashRequest {
|
|
@@ -455,9 +399,7 @@ message GetIdentityByPublicKeyHashRequest {
|
|
|
455
399
|
bytes public_key_hash = 1;
|
|
456
400
|
bool prove = 2;
|
|
457
401
|
}
|
|
458
|
-
oneof version {
|
|
459
|
-
GetIdentityByPublicKeyHashRequestV0 v0 = 1;
|
|
460
|
-
}
|
|
402
|
+
oneof version { GetIdentityByPublicKeyHashRequestV0 v0 = 1; }
|
|
461
403
|
}
|
|
462
404
|
|
|
463
405
|
message GetIdentityByPublicKeyHashResponse {
|
|
@@ -469,9 +411,7 @@ message GetIdentityByPublicKeyHashResponse {
|
|
|
469
411
|
|
|
470
412
|
ResponseMetadata metadata = 3;
|
|
471
413
|
}
|
|
472
|
-
oneof version {
|
|
473
|
-
GetIdentityByPublicKeyHashResponseV0 v0 = 1;
|
|
474
|
-
}
|
|
414
|
+
oneof version { GetIdentityByPublicKeyHashResponseV0 v0 = 1; }
|
|
475
415
|
}
|
|
476
416
|
|
|
477
417
|
message WaitForStateTransitionResultRequest {
|
|
@@ -479,9 +419,7 @@ message WaitForStateTransitionResultRequest {
|
|
|
479
419
|
bytes state_transition_hash = 1;
|
|
480
420
|
bool prove = 2;
|
|
481
421
|
}
|
|
482
|
-
oneof version {
|
|
483
|
-
WaitForStateTransitionResultRequestV0 v0 = 1;
|
|
484
|
-
}
|
|
422
|
+
oneof version { WaitForStateTransitionResultRequestV0 v0 = 1; }
|
|
485
423
|
}
|
|
486
424
|
|
|
487
425
|
message WaitForStateTransitionResultResponse {
|
|
@@ -492,9 +430,7 @@ message WaitForStateTransitionResultResponse {
|
|
|
492
430
|
}
|
|
493
431
|
ResponseMetadata metadata = 3;
|
|
494
432
|
}
|
|
495
|
-
oneof version {
|
|
496
|
-
WaitForStateTransitionResultResponseV0 v0 = 1;
|
|
497
|
-
}
|
|
433
|
+
oneof version { WaitForStateTransitionResultResponseV0 v0 = 1; }
|
|
498
434
|
}
|
|
499
435
|
|
|
500
436
|
message GetConsensusParamsRequest {
|
|
@@ -502,9 +438,7 @@ message GetConsensusParamsRequest {
|
|
|
502
438
|
int32 height = 1;
|
|
503
439
|
bool prove = 2;
|
|
504
440
|
}
|
|
505
|
-
oneof version {
|
|
506
|
-
GetConsensusParamsRequestV0 v0 = 1;
|
|
507
|
-
}
|
|
441
|
+
oneof version { GetConsensusParamsRequestV0 v0 = 1; }
|
|
508
442
|
}
|
|
509
443
|
|
|
510
444
|
message GetConsensusParamsResponse {
|
|
@@ -524,9 +458,7 @@ message GetConsensusParamsResponse {
|
|
|
524
458
|
ConsensusParamsBlock block = 1;
|
|
525
459
|
ConsensusParamsEvidence evidence = 2;
|
|
526
460
|
}
|
|
527
|
-
oneof version {
|
|
528
|
-
GetConsensusParamsResponseV0 v0 = 1;
|
|
529
|
-
}
|
|
461
|
+
oneof version { GetConsensusParamsResponseV0 v0 = 1; }
|
|
530
462
|
}
|
|
531
463
|
|
|
532
464
|
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
pub use tenderdash_proto::serializers::bytes::{
|
|
2
|
+
base64string, hexstring, option_base64string, vec_base64string,
|
|
3
|
+
};
|
|
4
|
+
|
|
5
|
+
/// Serialize using [ToString] and deserialize using [FromStr](std::str::FromStr) trait implementations.
|
|
6
|
+
pub mod from_to_string {
|
|
7
|
+
use std::{fmt::Display, str::FromStr};
|
|
8
|
+
|
|
9
|
+
use serde::{Deserialize, Serializer};
|
|
10
|
+
|
|
11
|
+
pub fn deserialize<'de, D, T>(deserializer: D) -> Result<T, D::Error>
|
|
12
|
+
where
|
|
13
|
+
D: serde::de::Deserializer<'de>,
|
|
14
|
+
T: FromStr,
|
|
15
|
+
T::Err: Display,
|
|
16
|
+
{
|
|
17
|
+
use serde::de::Error;
|
|
18
|
+
|
|
19
|
+
String::deserialize(deserializer).and_then(|string| {
|
|
20
|
+
string
|
|
21
|
+
.parse::<T>()
|
|
22
|
+
.map_err(|err| Error::custom(err.to_string()))
|
|
23
|
+
})
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/// Serialize from T into string
|
|
27
|
+
pub fn serialize<S, T>(value: &T, serializer: S) -> Result<S::Ok, S::Error>
|
|
28
|
+
where
|
|
29
|
+
S: Serializer,
|
|
30
|
+
T: ToString,
|
|
31
|
+
{
|
|
32
|
+
serializer.serialize_str(&value.to_string())
|
|
33
|
+
}
|
|
34
|
+
}
|
package/src/lib.rs
CHANGED
|
@@ -12,4 +12,13 @@ pub mod platform {
|
|
|
12
12
|
pub mod v0 {
|
|
13
13
|
include!("platform/proto/org.dash.platform.dapi.v0.rs");
|
|
14
14
|
}
|
|
15
|
+
#[cfg(feature = "tenderdash-proto")]
|
|
16
|
+
pub use tenderdash_proto as proto;
|
|
17
|
+
|
|
18
|
+
mod versioning;
|
|
19
|
+
pub use versioning::VersionedGrpcResponse;
|
|
15
20
|
}
|
|
21
|
+
|
|
22
|
+
#[cfg(feature = "serde")]
|
|
23
|
+
// Serde deserialization logic
|
|
24
|
+
pub mod deserialization;
|