protobuf-platform 1.2.719 → 1.2.720
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/bonus/bonus.proto +25 -0
- package/bonus/bonus_grpc_pb.js +34 -0
- package/bonus/bonus_pb.js +694 -0
- package/package.json +1 -1
- package/scripts/verify-provider-winnings-contract.js +65 -0
package/bonus/bonus.proto
CHANGED
|
@@ -44,6 +44,8 @@ service Bonus {
|
|
|
44
44
|
rpc getCommonUserBonusItems(GetCommonUserBonusItemsRequest) returns (GetCommonUserBonusItemsResponse);
|
|
45
45
|
// Validates one selected wagering user bonus for a game wager list and balance type; returns authoritative state for game-service Redis snapshot.
|
|
46
46
|
rpc validateSelectedWageringUserBonus(ValidateSelectedWageringUserBonusRequest) returns (ValidateSelectedWageringUserBonusResponse);
|
|
47
|
+
// Resolve a durable provider reward identity before any winnings wallet mutation.
|
|
48
|
+
rpc resolveProviderRewardWinnings(ResolveProviderRewardWinningsRequest) returns (ResolveProviderRewardWinningsResponse);
|
|
47
49
|
//Common lists
|
|
48
50
|
rpc readListBonusTypes(PaginationRequest) returns (BonusTypesResponse);
|
|
49
51
|
rpc readListBonusStatuses(PaginationRequest) returns (BonusStatusesResponse);
|
|
@@ -760,3 +762,26 @@ message BonusClaimedEvent {
|
|
|
760
762
|
optional string request_id = 12;
|
|
761
763
|
optional bool admin_initiated = 13;
|
|
762
764
|
}
|
|
765
|
+
|
|
766
|
+
// Authoritative provider units, never account/session-converted values.
|
|
767
|
+
message ResolveProviderRewardWinningsRequest {
|
|
768
|
+
int64 user_id = 1;
|
|
769
|
+
string provider_reward_id = 2;
|
|
770
|
+
string provider_transaction_id = 3;
|
|
771
|
+
string provider_currency = 4;
|
|
772
|
+
uint32 provider_currency_scale = 5;
|
|
773
|
+
string provider_amount_minor = 6;
|
|
774
|
+
}
|
|
775
|
+
|
|
776
|
+
message ResolveProviderRewardWinningsResponse {
|
|
777
|
+
// Explicit "legacy" or "normalized". Empty/unknown is not legacy.
|
|
778
|
+
string mode = 1;
|
|
779
|
+
optional int64 user_bonus_id = 2;
|
|
780
|
+
optional string currency = 3;
|
|
781
|
+
optional uint32 currency_scale = 4;
|
|
782
|
+
optional string amount_minor = 5;
|
|
783
|
+
// Versioned audit: explicit frozen pair/rate/scales, original and normalized
|
|
784
|
+
// minor amounts, UserBonus/snapshot and provider reward/transaction identity.
|
|
785
|
+
// Required for normalized; missing data must fail closed without session FX.
|
|
786
|
+
optional string provider_winnings_fx_json = 6;
|
|
787
|
+
}
|
package/bonus/bonus_grpc_pb.js
CHANGED
|
@@ -478,6 +478,28 @@ function deserialize_bonus_PongResponse(buffer_arg) {
|
|
|
478
478
|
return bonus_bonus_pb.PongResponse.deserializeBinary(new Uint8Array(buffer_arg));
|
|
479
479
|
}
|
|
480
480
|
|
|
481
|
+
function serialize_bonus_ResolveProviderRewardWinningsRequest(arg) {
|
|
482
|
+
if (!(arg instanceof bonus_bonus_pb.ResolveProviderRewardWinningsRequest)) {
|
|
483
|
+
throw new Error('Expected argument of type bonus.ResolveProviderRewardWinningsRequest');
|
|
484
|
+
}
|
|
485
|
+
return Buffer.from(arg.serializeBinary());
|
|
486
|
+
}
|
|
487
|
+
|
|
488
|
+
function deserialize_bonus_ResolveProviderRewardWinningsRequest(buffer_arg) {
|
|
489
|
+
return bonus_bonus_pb.ResolveProviderRewardWinningsRequest.deserializeBinary(new Uint8Array(buffer_arg));
|
|
490
|
+
}
|
|
491
|
+
|
|
492
|
+
function serialize_bonus_ResolveProviderRewardWinningsResponse(arg) {
|
|
493
|
+
if (!(arg instanceof bonus_bonus_pb.ResolveProviderRewardWinningsResponse)) {
|
|
494
|
+
throw new Error('Expected argument of type bonus.ResolveProviderRewardWinningsResponse');
|
|
495
|
+
}
|
|
496
|
+
return Buffer.from(arg.serializeBinary());
|
|
497
|
+
}
|
|
498
|
+
|
|
499
|
+
function deserialize_bonus_ResolveProviderRewardWinningsResponse(buffer_arg) {
|
|
500
|
+
return bonus_bonus_pb.ResolveProviderRewardWinningsResponse.deserializeBinary(new Uint8Array(buffer_arg));
|
|
501
|
+
}
|
|
502
|
+
|
|
481
503
|
function serialize_bonus_SingleBonusResponse(arg) {
|
|
482
504
|
if (!(arg instanceof bonus_bonus_pb.SingleBonusResponse)) {
|
|
483
505
|
throw new Error('Expected argument of type bonus.SingleBonusResponse');
|
|
@@ -936,6 +958,18 @@ validateSelectedWageringUserBonus: {
|
|
|
936
958
|
responseSerialize: serialize_bonus_ValidateSelectedWageringUserBonusResponse,
|
|
937
959
|
responseDeserialize: deserialize_bonus_ValidateSelectedWageringUserBonusResponse,
|
|
938
960
|
},
|
|
961
|
+
// Resolve a durable provider reward identity before any winnings wallet mutation.
|
|
962
|
+
resolveProviderRewardWinnings: {
|
|
963
|
+
path: '/bonus.Bonus/resolveProviderRewardWinnings',
|
|
964
|
+
requestStream: false,
|
|
965
|
+
responseStream: false,
|
|
966
|
+
requestType: bonus_bonus_pb.ResolveProviderRewardWinningsRequest,
|
|
967
|
+
responseType: bonus_bonus_pb.ResolveProviderRewardWinningsResponse,
|
|
968
|
+
requestSerialize: serialize_bonus_ResolveProviderRewardWinningsRequest,
|
|
969
|
+
requestDeserialize: deserialize_bonus_ResolveProviderRewardWinningsRequest,
|
|
970
|
+
responseSerialize: serialize_bonus_ResolveProviderRewardWinningsResponse,
|
|
971
|
+
responseDeserialize: deserialize_bonus_ResolveProviderRewardWinningsResponse,
|
|
972
|
+
},
|
|
939
973
|
// Common lists
|
|
940
974
|
readListBonusTypes: {
|
|
941
975
|
path: '/bonus.Bonus/readListBonusTypes',
|
package/bonus/bonus_pb.js
CHANGED
|
@@ -87,6 +87,8 @@ goog.exportSymbol('proto.bonus.ListSignUpBonusesResponse', null, global);
|
|
|
87
87
|
goog.exportSymbol('proto.bonus.PaginationRequest', null, global);
|
|
88
88
|
goog.exportSymbol('proto.bonus.PingRequest', null, global);
|
|
89
89
|
goog.exportSymbol('proto.bonus.PongResponse', null, global);
|
|
90
|
+
goog.exportSymbol('proto.bonus.ResolveProviderRewardWinningsRequest', null, global);
|
|
91
|
+
goog.exportSymbol('proto.bonus.ResolveProviderRewardWinningsResponse', null, global);
|
|
90
92
|
goog.exportSymbol('proto.bonus.SearchBonusRequest', null, global);
|
|
91
93
|
goog.exportSymbol('proto.bonus.SignUpBonusListItem', null, global);
|
|
92
94
|
goog.exportSymbol('proto.bonus.SingleBonusItem', null, global);
|
|
@@ -1587,6 +1589,48 @@ if (goog.DEBUG && !COMPILED) {
|
|
|
1587
1589
|
*/
|
|
1588
1590
|
proto.bonus.BonusClaimedEvent.displayName = 'proto.bonus.BonusClaimedEvent';
|
|
1589
1591
|
}
|
|
1592
|
+
/**
|
|
1593
|
+
* Generated by JsPbCodeGenerator.
|
|
1594
|
+
* @param {Array=} opt_data Optional initial data array, typically from a
|
|
1595
|
+
* server response, or constructed directly in Javascript. The array is used
|
|
1596
|
+
* in place and becomes part of the constructed object. It is not cloned.
|
|
1597
|
+
* If no data is provided, the constructed object will be empty, but still
|
|
1598
|
+
* valid.
|
|
1599
|
+
* @extends {jspb.Message}
|
|
1600
|
+
* @constructor
|
|
1601
|
+
*/
|
|
1602
|
+
proto.bonus.ResolveProviderRewardWinningsRequest = function(opt_data) {
|
|
1603
|
+
jspb.Message.initialize(this, opt_data, 0, -1, null, null);
|
|
1604
|
+
};
|
|
1605
|
+
goog.inherits(proto.bonus.ResolveProviderRewardWinningsRequest, jspb.Message);
|
|
1606
|
+
if (goog.DEBUG && !COMPILED) {
|
|
1607
|
+
/**
|
|
1608
|
+
* @public
|
|
1609
|
+
* @override
|
|
1610
|
+
*/
|
|
1611
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.displayName = 'proto.bonus.ResolveProviderRewardWinningsRequest';
|
|
1612
|
+
}
|
|
1613
|
+
/**
|
|
1614
|
+
* Generated by JsPbCodeGenerator.
|
|
1615
|
+
* @param {Array=} opt_data Optional initial data array, typically from a
|
|
1616
|
+
* server response, or constructed directly in Javascript. The array is used
|
|
1617
|
+
* in place and becomes part of the constructed object. It is not cloned.
|
|
1618
|
+
* If no data is provided, the constructed object will be empty, but still
|
|
1619
|
+
* valid.
|
|
1620
|
+
* @extends {jspb.Message}
|
|
1621
|
+
* @constructor
|
|
1622
|
+
*/
|
|
1623
|
+
proto.bonus.ResolveProviderRewardWinningsResponse = function(opt_data) {
|
|
1624
|
+
jspb.Message.initialize(this, opt_data, 0, -1, null, null);
|
|
1625
|
+
};
|
|
1626
|
+
goog.inherits(proto.bonus.ResolveProviderRewardWinningsResponse, jspb.Message);
|
|
1627
|
+
if (goog.DEBUG && !COMPILED) {
|
|
1628
|
+
/**
|
|
1629
|
+
* @public
|
|
1630
|
+
* @override
|
|
1631
|
+
*/
|
|
1632
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.displayName = 'proto.bonus.ResolveProviderRewardWinningsResponse';
|
|
1633
|
+
}
|
|
1590
1634
|
|
|
1591
1635
|
|
|
1592
1636
|
|
|
@@ -31215,4 +31259,654 @@ proto.bonus.BonusClaimedEvent.prototype.hasAdminInitiated = function() {
|
|
|
31215
31259
|
};
|
|
31216
31260
|
|
|
31217
31261
|
|
|
31262
|
+
|
|
31263
|
+
|
|
31264
|
+
|
|
31265
|
+
if (jspb.Message.GENERATE_TO_OBJECT) {
|
|
31266
|
+
/**
|
|
31267
|
+
* Creates an object representation of this proto.
|
|
31268
|
+
* Field names that are reserved in JavaScript and will be renamed to pb_name.
|
|
31269
|
+
* Optional fields that are not set will be set to undefined.
|
|
31270
|
+
* To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
|
|
31271
|
+
* For the list of reserved names please see:
|
|
31272
|
+
* net/proto2/compiler/js/internal/generator.cc#kKeyword.
|
|
31273
|
+
* @param {boolean=} opt_includeInstance Deprecated. whether to include the
|
|
31274
|
+
* JSPB instance for transitional soy proto support:
|
|
31275
|
+
* http://goto/soy-param-migration
|
|
31276
|
+
* @return {!Object}
|
|
31277
|
+
*/
|
|
31278
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.toObject = function(opt_includeInstance) {
|
|
31279
|
+
return proto.bonus.ResolveProviderRewardWinningsRequest.toObject(opt_includeInstance, this);
|
|
31280
|
+
};
|
|
31281
|
+
|
|
31282
|
+
|
|
31283
|
+
/**
|
|
31284
|
+
* Static version of the {@see toObject} method.
|
|
31285
|
+
* @param {boolean|undefined} includeInstance Deprecated. Whether to include
|
|
31286
|
+
* the JSPB instance for transitional soy proto support:
|
|
31287
|
+
* http://goto/soy-param-migration
|
|
31288
|
+
* @param {!proto.bonus.ResolveProviderRewardWinningsRequest} msg The msg instance to transform.
|
|
31289
|
+
* @return {!Object}
|
|
31290
|
+
* @suppress {unusedLocalVariables} f is only used for nested messages
|
|
31291
|
+
*/
|
|
31292
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.toObject = function(includeInstance, msg) {
|
|
31293
|
+
var f, obj = {
|
|
31294
|
+
userId: jspb.Message.getFieldWithDefault(msg, 1, 0),
|
|
31295
|
+
providerRewardId: jspb.Message.getFieldWithDefault(msg, 2, ""),
|
|
31296
|
+
providerTransactionId: jspb.Message.getFieldWithDefault(msg, 3, ""),
|
|
31297
|
+
providerCurrency: jspb.Message.getFieldWithDefault(msg, 4, ""),
|
|
31298
|
+
providerCurrencyScale: jspb.Message.getFieldWithDefault(msg, 5, 0),
|
|
31299
|
+
providerAmountMinor: jspb.Message.getFieldWithDefault(msg, 6, "")
|
|
31300
|
+
};
|
|
31301
|
+
|
|
31302
|
+
if (includeInstance) {
|
|
31303
|
+
obj.$jspbMessageInstance = msg;
|
|
31304
|
+
}
|
|
31305
|
+
return obj;
|
|
31306
|
+
};
|
|
31307
|
+
}
|
|
31308
|
+
|
|
31309
|
+
|
|
31310
|
+
/**
|
|
31311
|
+
* Deserializes binary data (in protobuf wire format).
|
|
31312
|
+
* @param {jspb.ByteSource} bytes The bytes to deserialize.
|
|
31313
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsRequest}
|
|
31314
|
+
*/
|
|
31315
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.deserializeBinary = function(bytes) {
|
|
31316
|
+
var reader = new jspb.BinaryReader(bytes);
|
|
31317
|
+
var msg = new proto.bonus.ResolveProviderRewardWinningsRequest;
|
|
31318
|
+
return proto.bonus.ResolveProviderRewardWinningsRequest.deserializeBinaryFromReader(msg, reader);
|
|
31319
|
+
};
|
|
31320
|
+
|
|
31321
|
+
|
|
31322
|
+
/**
|
|
31323
|
+
* Deserializes binary data (in protobuf wire format) from the
|
|
31324
|
+
* given reader into the given message object.
|
|
31325
|
+
* @param {!proto.bonus.ResolveProviderRewardWinningsRequest} msg The message object to deserialize into.
|
|
31326
|
+
* @param {!jspb.BinaryReader} reader The BinaryReader to use.
|
|
31327
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsRequest}
|
|
31328
|
+
*/
|
|
31329
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.deserializeBinaryFromReader = function(msg, reader) {
|
|
31330
|
+
while (reader.nextField()) {
|
|
31331
|
+
if (reader.isEndGroup()) {
|
|
31332
|
+
break;
|
|
31333
|
+
}
|
|
31334
|
+
var field = reader.getFieldNumber();
|
|
31335
|
+
switch (field) {
|
|
31336
|
+
case 1:
|
|
31337
|
+
var value = /** @type {number} */ (reader.readInt64());
|
|
31338
|
+
msg.setUserId(value);
|
|
31339
|
+
break;
|
|
31340
|
+
case 2:
|
|
31341
|
+
var value = /** @type {string} */ (reader.readString());
|
|
31342
|
+
msg.setProviderRewardId(value);
|
|
31343
|
+
break;
|
|
31344
|
+
case 3:
|
|
31345
|
+
var value = /** @type {string} */ (reader.readString());
|
|
31346
|
+
msg.setProviderTransactionId(value);
|
|
31347
|
+
break;
|
|
31348
|
+
case 4:
|
|
31349
|
+
var value = /** @type {string} */ (reader.readString());
|
|
31350
|
+
msg.setProviderCurrency(value);
|
|
31351
|
+
break;
|
|
31352
|
+
case 5:
|
|
31353
|
+
var value = /** @type {number} */ (reader.readUint32());
|
|
31354
|
+
msg.setProviderCurrencyScale(value);
|
|
31355
|
+
break;
|
|
31356
|
+
case 6:
|
|
31357
|
+
var value = /** @type {string} */ (reader.readString());
|
|
31358
|
+
msg.setProviderAmountMinor(value);
|
|
31359
|
+
break;
|
|
31360
|
+
default:
|
|
31361
|
+
reader.skipField();
|
|
31362
|
+
break;
|
|
31363
|
+
}
|
|
31364
|
+
}
|
|
31365
|
+
return msg;
|
|
31366
|
+
};
|
|
31367
|
+
|
|
31368
|
+
|
|
31369
|
+
/**
|
|
31370
|
+
* Serializes the message to binary data (in protobuf wire format).
|
|
31371
|
+
* @return {!Uint8Array}
|
|
31372
|
+
*/
|
|
31373
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.serializeBinary = function() {
|
|
31374
|
+
var writer = new jspb.BinaryWriter();
|
|
31375
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.serializeBinaryToWriter(this, writer);
|
|
31376
|
+
return writer.getResultBuffer();
|
|
31377
|
+
};
|
|
31378
|
+
|
|
31379
|
+
|
|
31380
|
+
/**
|
|
31381
|
+
* Serializes the given message to binary data (in protobuf wire
|
|
31382
|
+
* format), writing to the given BinaryWriter.
|
|
31383
|
+
* @param {!proto.bonus.ResolveProviderRewardWinningsRequest} message
|
|
31384
|
+
* @param {!jspb.BinaryWriter} writer
|
|
31385
|
+
* @suppress {unusedLocalVariables} f is only used for nested messages
|
|
31386
|
+
*/
|
|
31387
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.serializeBinaryToWriter = function(message, writer) {
|
|
31388
|
+
var f = undefined;
|
|
31389
|
+
f = message.getUserId();
|
|
31390
|
+
if (f !== 0) {
|
|
31391
|
+
writer.writeInt64(
|
|
31392
|
+
1,
|
|
31393
|
+
f
|
|
31394
|
+
);
|
|
31395
|
+
}
|
|
31396
|
+
f = message.getProviderRewardId();
|
|
31397
|
+
if (f.length > 0) {
|
|
31398
|
+
writer.writeString(
|
|
31399
|
+
2,
|
|
31400
|
+
f
|
|
31401
|
+
);
|
|
31402
|
+
}
|
|
31403
|
+
f = message.getProviderTransactionId();
|
|
31404
|
+
if (f.length > 0) {
|
|
31405
|
+
writer.writeString(
|
|
31406
|
+
3,
|
|
31407
|
+
f
|
|
31408
|
+
);
|
|
31409
|
+
}
|
|
31410
|
+
f = message.getProviderCurrency();
|
|
31411
|
+
if (f.length > 0) {
|
|
31412
|
+
writer.writeString(
|
|
31413
|
+
4,
|
|
31414
|
+
f
|
|
31415
|
+
);
|
|
31416
|
+
}
|
|
31417
|
+
f = message.getProviderCurrencyScale();
|
|
31418
|
+
if (f !== 0) {
|
|
31419
|
+
writer.writeUint32(
|
|
31420
|
+
5,
|
|
31421
|
+
f
|
|
31422
|
+
);
|
|
31423
|
+
}
|
|
31424
|
+
f = message.getProviderAmountMinor();
|
|
31425
|
+
if (f.length > 0) {
|
|
31426
|
+
writer.writeString(
|
|
31427
|
+
6,
|
|
31428
|
+
f
|
|
31429
|
+
);
|
|
31430
|
+
}
|
|
31431
|
+
};
|
|
31432
|
+
|
|
31433
|
+
|
|
31434
|
+
/**
|
|
31435
|
+
* optional int64 user_id = 1;
|
|
31436
|
+
* @return {number}
|
|
31437
|
+
*/
|
|
31438
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.getUserId = function() {
|
|
31439
|
+
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
|
|
31440
|
+
};
|
|
31441
|
+
|
|
31442
|
+
|
|
31443
|
+
/**
|
|
31444
|
+
* @param {number} value
|
|
31445
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsRequest} returns this
|
|
31446
|
+
*/
|
|
31447
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.setUserId = function(value) {
|
|
31448
|
+
return jspb.Message.setProto3IntField(this, 1, value);
|
|
31449
|
+
};
|
|
31450
|
+
|
|
31451
|
+
|
|
31452
|
+
/**
|
|
31453
|
+
* optional string provider_reward_id = 2;
|
|
31454
|
+
* @return {string}
|
|
31455
|
+
*/
|
|
31456
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.getProviderRewardId = function() {
|
|
31457
|
+
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
|
|
31458
|
+
};
|
|
31459
|
+
|
|
31460
|
+
|
|
31461
|
+
/**
|
|
31462
|
+
* @param {string} value
|
|
31463
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsRequest} returns this
|
|
31464
|
+
*/
|
|
31465
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.setProviderRewardId = function(value) {
|
|
31466
|
+
return jspb.Message.setProto3StringField(this, 2, value);
|
|
31467
|
+
};
|
|
31468
|
+
|
|
31469
|
+
|
|
31470
|
+
/**
|
|
31471
|
+
* optional string provider_transaction_id = 3;
|
|
31472
|
+
* @return {string}
|
|
31473
|
+
*/
|
|
31474
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.getProviderTransactionId = function() {
|
|
31475
|
+
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
|
|
31476
|
+
};
|
|
31477
|
+
|
|
31478
|
+
|
|
31479
|
+
/**
|
|
31480
|
+
* @param {string} value
|
|
31481
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsRequest} returns this
|
|
31482
|
+
*/
|
|
31483
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.setProviderTransactionId = function(value) {
|
|
31484
|
+
return jspb.Message.setProto3StringField(this, 3, value);
|
|
31485
|
+
};
|
|
31486
|
+
|
|
31487
|
+
|
|
31488
|
+
/**
|
|
31489
|
+
* optional string provider_currency = 4;
|
|
31490
|
+
* @return {string}
|
|
31491
|
+
*/
|
|
31492
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.getProviderCurrency = function() {
|
|
31493
|
+
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, ""));
|
|
31494
|
+
};
|
|
31495
|
+
|
|
31496
|
+
|
|
31497
|
+
/**
|
|
31498
|
+
* @param {string} value
|
|
31499
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsRequest} returns this
|
|
31500
|
+
*/
|
|
31501
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.setProviderCurrency = function(value) {
|
|
31502
|
+
return jspb.Message.setProto3StringField(this, 4, value);
|
|
31503
|
+
};
|
|
31504
|
+
|
|
31505
|
+
|
|
31506
|
+
/**
|
|
31507
|
+
* optional uint32 provider_currency_scale = 5;
|
|
31508
|
+
* @return {number}
|
|
31509
|
+
*/
|
|
31510
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.getProviderCurrencyScale = function() {
|
|
31511
|
+
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
|
|
31512
|
+
};
|
|
31513
|
+
|
|
31514
|
+
|
|
31515
|
+
/**
|
|
31516
|
+
* @param {number} value
|
|
31517
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsRequest} returns this
|
|
31518
|
+
*/
|
|
31519
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.setProviderCurrencyScale = function(value) {
|
|
31520
|
+
return jspb.Message.setProto3IntField(this, 5, value);
|
|
31521
|
+
};
|
|
31522
|
+
|
|
31523
|
+
|
|
31524
|
+
/**
|
|
31525
|
+
* optional string provider_amount_minor = 6;
|
|
31526
|
+
* @return {string}
|
|
31527
|
+
*/
|
|
31528
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.getProviderAmountMinor = function() {
|
|
31529
|
+
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, ""));
|
|
31530
|
+
};
|
|
31531
|
+
|
|
31532
|
+
|
|
31533
|
+
/**
|
|
31534
|
+
* @param {string} value
|
|
31535
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsRequest} returns this
|
|
31536
|
+
*/
|
|
31537
|
+
proto.bonus.ResolveProviderRewardWinningsRequest.prototype.setProviderAmountMinor = function(value) {
|
|
31538
|
+
return jspb.Message.setProto3StringField(this, 6, value);
|
|
31539
|
+
};
|
|
31540
|
+
|
|
31541
|
+
|
|
31542
|
+
|
|
31543
|
+
|
|
31544
|
+
|
|
31545
|
+
if (jspb.Message.GENERATE_TO_OBJECT) {
|
|
31546
|
+
/**
|
|
31547
|
+
* Creates an object representation of this proto.
|
|
31548
|
+
* Field names that are reserved in JavaScript and will be renamed to pb_name.
|
|
31549
|
+
* Optional fields that are not set will be set to undefined.
|
|
31550
|
+
* To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
|
|
31551
|
+
* For the list of reserved names please see:
|
|
31552
|
+
* net/proto2/compiler/js/internal/generator.cc#kKeyword.
|
|
31553
|
+
* @param {boolean=} opt_includeInstance Deprecated. whether to include the
|
|
31554
|
+
* JSPB instance for transitional soy proto support:
|
|
31555
|
+
* http://goto/soy-param-migration
|
|
31556
|
+
* @return {!Object}
|
|
31557
|
+
*/
|
|
31558
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.toObject = function(opt_includeInstance) {
|
|
31559
|
+
return proto.bonus.ResolveProviderRewardWinningsResponse.toObject(opt_includeInstance, this);
|
|
31560
|
+
};
|
|
31561
|
+
|
|
31562
|
+
|
|
31563
|
+
/**
|
|
31564
|
+
* Static version of the {@see toObject} method.
|
|
31565
|
+
* @param {boolean|undefined} includeInstance Deprecated. Whether to include
|
|
31566
|
+
* the JSPB instance for transitional soy proto support:
|
|
31567
|
+
* http://goto/soy-param-migration
|
|
31568
|
+
* @param {!proto.bonus.ResolveProviderRewardWinningsResponse} msg The msg instance to transform.
|
|
31569
|
+
* @return {!Object}
|
|
31570
|
+
* @suppress {unusedLocalVariables} f is only used for nested messages
|
|
31571
|
+
*/
|
|
31572
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.toObject = function(includeInstance, msg) {
|
|
31573
|
+
var f, obj = {
|
|
31574
|
+
mode: jspb.Message.getFieldWithDefault(msg, 1, ""),
|
|
31575
|
+
userBonusId: jspb.Message.getFieldWithDefault(msg, 2, 0),
|
|
31576
|
+
currency: jspb.Message.getFieldWithDefault(msg, 3, ""),
|
|
31577
|
+
currencyScale: jspb.Message.getFieldWithDefault(msg, 4, 0),
|
|
31578
|
+
amountMinor: jspb.Message.getFieldWithDefault(msg, 5, ""),
|
|
31579
|
+
providerWinningsFxJson: jspb.Message.getFieldWithDefault(msg, 6, "")
|
|
31580
|
+
};
|
|
31581
|
+
|
|
31582
|
+
if (includeInstance) {
|
|
31583
|
+
obj.$jspbMessageInstance = msg;
|
|
31584
|
+
}
|
|
31585
|
+
return obj;
|
|
31586
|
+
};
|
|
31587
|
+
}
|
|
31588
|
+
|
|
31589
|
+
|
|
31590
|
+
/**
|
|
31591
|
+
* Deserializes binary data (in protobuf wire format).
|
|
31592
|
+
* @param {jspb.ByteSource} bytes The bytes to deserialize.
|
|
31593
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsResponse}
|
|
31594
|
+
*/
|
|
31595
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.deserializeBinary = function(bytes) {
|
|
31596
|
+
var reader = new jspb.BinaryReader(bytes);
|
|
31597
|
+
var msg = new proto.bonus.ResolveProviderRewardWinningsResponse;
|
|
31598
|
+
return proto.bonus.ResolveProviderRewardWinningsResponse.deserializeBinaryFromReader(msg, reader);
|
|
31599
|
+
};
|
|
31600
|
+
|
|
31601
|
+
|
|
31602
|
+
/**
|
|
31603
|
+
* Deserializes binary data (in protobuf wire format) from the
|
|
31604
|
+
* given reader into the given message object.
|
|
31605
|
+
* @param {!proto.bonus.ResolveProviderRewardWinningsResponse} msg The message object to deserialize into.
|
|
31606
|
+
* @param {!jspb.BinaryReader} reader The BinaryReader to use.
|
|
31607
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsResponse}
|
|
31608
|
+
*/
|
|
31609
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.deserializeBinaryFromReader = function(msg, reader) {
|
|
31610
|
+
while (reader.nextField()) {
|
|
31611
|
+
if (reader.isEndGroup()) {
|
|
31612
|
+
break;
|
|
31613
|
+
}
|
|
31614
|
+
var field = reader.getFieldNumber();
|
|
31615
|
+
switch (field) {
|
|
31616
|
+
case 1:
|
|
31617
|
+
var value = /** @type {string} */ (reader.readString());
|
|
31618
|
+
msg.setMode(value);
|
|
31619
|
+
break;
|
|
31620
|
+
case 2:
|
|
31621
|
+
var value = /** @type {number} */ (reader.readInt64());
|
|
31622
|
+
msg.setUserBonusId(value);
|
|
31623
|
+
break;
|
|
31624
|
+
case 3:
|
|
31625
|
+
var value = /** @type {string} */ (reader.readString());
|
|
31626
|
+
msg.setCurrency(value);
|
|
31627
|
+
break;
|
|
31628
|
+
case 4:
|
|
31629
|
+
var value = /** @type {number} */ (reader.readUint32());
|
|
31630
|
+
msg.setCurrencyScale(value);
|
|
31631
|
+
break;
|
|
31632
|
+
case 5:
|
|
31633
|
+
var value = /** @type {string} */ (reader.readString());
|
|
31634
|
+
msg.setAmountMinor(value);
|
|
31635
|
+
break;
|
|
31636
|
+
case 6:
|
|
31637
|
+
var value = /** @type {string} */ (reader.readString());
|
|
31638
|
+
msg.setProviderWinningsFxJson(value);
|
|
31639
|
+
break;
|
|
31640
|
+
default:
|
|
31641
|
+
reader.skipField();
|
|
31642
|
+
break;
|
|
31643
|
+
}
|
|
31644
|
+
}
|
|
31645
|
+
return msg;
|
|
31646
|
+
};
|
|
31647
|
+
|
|
31648
|
+
|
|
31649
|
+
/**
|
|
31650
|
+
* Serializes the message to binary data (in protobuf wire format).
|
|
31651
|
+
* @return {!Uint8Array}
|
|
31652
|
+
*/
|
|
31653
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.serializeBinary = function() {
|
|
31654
|
+
var writer = new jspb.BinaryWriter();
|
|
31655
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.serializeBinaryToWriter(this, writer);
|
|
31656
|
+
return writer.getResultBuffer();
|
|
31657
|
+
};
|
|
31658
|
+
|
|
31659
|
+
|
|
31660
|
+
/**
|
|
31661
|
+
* Serializes the given message to binary data (in protobuf wire
|
|
31662
|
+
* format), writing to the given BinaryWriter.
|
|
31663
|
+
* @param {!proto.bonus.ResolveProviderRewardWinningsResponse} message
|
|
31664
|
+
* @param {!jspb.BinaryWriter} writer
|
|
31665
|
+
* @suppress {unusedLocalVariables} f is only used for nested messages
|
|
31666
|
+
*/
|
|
31667
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.serializeBinaryToWriter = function(message, writer) {
|
|
31668
|
+
var f = undefined;
|
|
31669
|
+
f = message.getMode();
|
|
31670
|
+
if (f.length > 0) {
|
|
31671
|
+
writer.writeString(
|
|
31672
|
+
1,
|
|
31673
|
+
f
|
|
31674
|
+
);
|
|
31675
|
+
}
|
|
31676
|
+
f = /** @type {number} */ (jspb.Message.getField(message, 2));
|
|
31677
|
+
if (f != null) {
|
|
31678
|
+
writer.writeInt64(
|
|
31679
|
+
2,
|
|
31680
|
+
f
|
|
31681
|
+
);
|
|
31682
|
+
}
|
|
31683
|
+
f = /** @type {string} */ (jspb.Message.getField(message, 3));
|
|
31684
|
+
if (f != null) {
|
|
31685
|
+
writer.writeString(
|
|
31686
|
+
3,
|
|
31687
|
+
f
|
|
31688
|
+
);
|
|
31689
|
+
}
|
|
31690
|
+
f = /** @type {number} */ (jspb.Message.getField(message, 4));
|
|
31691
|
+
if (f != null) {
|
|
31692
|
+
writer.writeUint32(
|
|
31693
|
+
4,
|
|
31694
|
+
f
|
|
31695
|
+
);
|
|
31696
|
+
}
|
|
31697
|
+
f = /** @type {string} */ (jspb.Message.getField(message, 5));
|
|
31698
|
+
if (f != null) {
|
|
31699
|
+
writer.writeString(
|
|
31700
|
+
5,
|
|
31701
|
+
f
|
|
31702
|
+
);
|
|
31703
|
+
}
|
|
31704
|
+
f = /** @type {string} */ (jspb.Message.getField(message, 6));
|
|
31705
|
+
if (f != null) {
|
|
31706
|
+
writer.writeString(
|
|
31707
|
+
6,
|
|
31708
|
+
f
|
|
31709
|
+
);
|
|
31710
|
+
}
|
|
31711
|
+
};
|
|
31712
|
+
|
|
31713
|
+
|
|
31714
|
+
/**
|
|
31715
|
+
* optional string mode = 1;
|
|
31716
|
+
* @return {string}
|
|
31717
|
+
*/
|
|
31718
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.getMode = function() {
|
|
31719
|
+
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
|
|
31720
|
+
};
|
|
31721
|
+
|
|
31722
|
+
|
|
31723
|
+
/**
|
|
31724
|
+
* @param {string} value
|
|
31725
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsResponse} returns this
|
|
31726
|
+
*/
|
|
31727
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.setMode = function(value) {
|
|
31728
|
+
return jspb.Message.setProto3StringField(this, 1, value);
|
|
31729
|
+
};
|
|
31730
|
+
|
|
31731
|
+
|
|
31732
|
+
/**
|
|
31733
|
+
* optional int64 user_bonus_id = 2;
|
|
31734
|
+
* @return {number}
|
|
31735
|
+
*/
|
|
31736
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.getUserBonusId = function() {
|
|
31737
|
+
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));
|
|
31738
|
+
};
|
|
31739
|
+
|
|
31740
|
+
|
|
31741
|
+
/**
|
|
31742
|
+
* @param {number} value
|
|
31743
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsResponse} returns this
|
|
31744
|
+
*/
|
|
31745
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.setUserBonusId = function(value) {
|
|
31746
|
+
return jspb.Message.setField(this, 2, value);
|
|
31747
|
+
};
|
|
31748
|
+
|
|
31749
|
+
|
|
31750
|
+
/**
|
|
31751
|
+
* Clears the field making it undefined.
|
|
31752
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsResponse} returns this
|
|
31753
|
+
*/
|
|
31754
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.clearUserBonusId = function() {
|
|
31755
|
+
return jspb.Message.setField(this, 2, undefined);
|
|
31756
|
+
};
|
|
31757
|
+
|
|
31758
|
+
|
|
31759
|
+
/**
|
|
31760
|
+
* Returns whether this field is set.
|
|
31761
|
+
* @return {boolean}
|
|
31762
|
+
*/
|
|
31763
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.hasUserBonusId = function() {
|
|
31764
|
+
return jspb.Message.getField(this, 2) != null;
|
|
31765
|
+
};
|
|
31766
|
+
|
|
31767
|
+
|
|
31768
|
+
/**
|
|
31769
|
+
* optional string currency = 3;
|
|
31770
|
+
* @return {string}
|
|
31771
|
+
*/
|
|
31772
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.getCurrency = function() {
|
|
31773
|
+
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
|
|
31774
|
+
};
|
|
31775
|
+
|
|
31776
|
+
|
|
31777
|
+
/**
|
|
31778
|
+
* @param {string} value
|
|
31779
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsResponse} returns this
|
|
31780
|
+
*/
|
|
31781
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.setCurrency = function(value) {
|
|
31782
|
+
return jspb.Message.setField(this, 3, value);
|
|
31783
|
+
};
|
|
31784
|
+
|
|
31785
|
+
|
|
31786
|
+
/**
|
|
31787
|
+
* Clears the field making it undefined.
|
|
31788
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsResponse} returns this
|
|
31789
|
+
*/
|
|
31790
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.clearCurrency = function() {
|
|
31791
|
+
return jspb.Message.setField(this, 3, undefined);
|
|
31792
|
+
};
|
|
31793
|
+
|
|
31794
|
+
|
|
31795
|
+
/**
|
|
31796
|
+
* Returns whether this field is set.
|
|
31797
|
+
* @return {boolean}
|
|
31798
|
+
*/
|
|
31799
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.hasCurrency = function() {
|
|
31800
|
+
return jspb.Message.getField(this, 3) != null;
|
|
31801
|
+
};
|
|
31802
|
+
|
|
31803
|
+
|
|
31804
|
+
/**
|
|
31805
|
+
* optional uint32 currency_scale = 4;
|
|
31806
|
+
* @return {number}
|
|
31807
|
+
*/
|
|
31808
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.getCurrencyScale = function() {
|
|
31809
|
+
return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));
|
|
31810
|
+
};
|
|
31811
|
+
|
|
31812
|
+
|
|
31813
|
+
/**
|
|
31814
|
+
* @param {number} value
|
|
31815
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsResponse} returns this
|
|
31816
|
+
*/
|
|
31817
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.setCurrencyScale = function(value) {
|
|
31818
|
+
return jspb.Message.setField(this, 4, value);
|
|
31819
|
+
};
|
|
31820
|
+
|
|
31821
|
+
|
|
31822
|
+
/**
|
|
31823
|
+
* Clears the field making it undefined.
|
|
31824
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsResponse} returns this
|
|
31825
|
+
*/
|
|
31826
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.clearCurrencyScale = function() {
|
|
31827
|
+
return jspb.Message.setField(this, 4, undefined);
|
|
31828
|
+
};
|
|
31829
|
+
|
|
31830
|
+
|
|
31831
|
+
/**
|
|
31832
|
+
* Returns whether this field is set.
|
|
31833
|
+
* @return {boolean}
|
|
31834
|
+
*/
|
|
31835
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.hasCurrencyScale = function() {
|
|
31836
|
+
return jspb.Message.getField(this, 4) != null;
|
|
31837
|
+
};
|
|
31838
|
+
|
|
31839
|
+
|
|
31840
|
+
/**
|
|
31841
|
+
* optional string amount_minor = 5;
|
|
31842
|
+
* @return {string}
|
|
31843
|
+
*/
|
|
31844
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.getAmountMinor = function() {
|
|
31845
|
+
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 5, ""));
|
|
31846
|
+
};
|
|
31847
|
+
|
|
31848
|
+
|
|
31849
|
+
/**
|
|
31850
|
+
* @param {string} value
|
|
31851
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsResponse} returns this
|
|
31852
|
+
*/
|
|
31853
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.setAmountMinor = function(value) {
|
|
31854
|
+
return jspb.Message.setField(this, 5, value);
|
|
31855
|
+
};
|
|
31856
|
+
|
|
31857
|
+
|
|
31858
|
+
/**
|
|
31859
|
+
* Clears the field making it undefined.
|
|
31860
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsResponse} returns this
|
|
31861
|
+
*/
|
|
31862
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.clearAmountMinor = function() {
|
|
31863
|
+
return jspb.Message.setField(this, 5, undefined);
|
|
31864
|
+
};
|
|
31865
|
+
|
|
31866
|
+
|
|
31867
|
+
/**
|
|
31868
|
+
* Returns whether this field is set.
|
|
31869
|
+
* @return {boolean}
|
|
31870
|
+
*/
|
|
31871
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.hasAmountMinor = function() {
|
|
31872
|
+
return jspb.Message.getField(this, 5) != null;
|
|
31873
|
+
};
|
|
31874
|
+
|
|
31875
|
+
|
|
31876
|
+
/**
|
|
31877
|
+
* optional string provider_winnings_fx_json = 6;
|
|
31878
|
+
* @return {string}
|
|
31879
|
+
*/
|
|
31880
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.getProviderWinningsFxJson = function() {
|
|
31881
|
+
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, ""));
|
|
31882
|
+
};
|
|
31883
|
+
|
|
31884
|
+
|
|
31885
|
+
/**
|
|
31886
|
+
* @param {string} value
|
|
31887
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsResponse} returns this
|
|
31888
|
+
*/
|
|
31889
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.setProviderWinningsFxJson = function(value) {
|
|
31890
|
+
return jspb.Message.setField(this, 6, value);
|
|
31891
|
+
};
|
|
31892
|
+
|
|
31893
|
+
|
|
31894
|
+
/**
|
|
31895
|
+
* Clears the field making it undefined.
|
|
31896
|
+
* @return {!proto.bonus.ResolveProviderRewardWinningsResponse} returns this
|
|
31897
|
+
*/
|
|
31898
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.clearProviderWinningsFxJson = function() {
|
|
31899
|
+
return jspb.Message.setField(this, 6, undefined);
|
|
31900
|
+
};
|
|
31901
|
+
|
|
31902
|
+
|
|
31903
|
+
/**
|
|
31904
|
+
* Returns whether this field is set.
|
|
31905
|
+
* @return {boolean}
|
|
31906
|
+
*/
|
|
31907
|
+
proto.bonus.ResolveProviderRewardWinningsResponse.prototype.hasProviderWinningsFxJson = function() {
|
|
31908
|
+
return jspb.Message.getField(this, 6) != null;
|
|
31909
|
+
};
|
|
31910
|
+
|
|
31911
|
+
|
|
31218
31912
|
goog.object.extend(exports, proto.bonus);
|
package/package.json
CHANGED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
const assert = require('node:assert/strict');
|
|
3
|
+
const { execFileSync } = require('node:child_process');
|
|
4
|
+
const { createRequire } = require('node:module');
|
|
5
|
+
const vm = require('node:vm');
|
|
6
|
+
const path = require('node:path');
|
|
7
|
+
const fs = require('node:fs');
|
|
8
|
+
const pkg = require('..');
|
|
9
|
+
const grpc = pkg.gRPC;
|
|
10
|
+
const messages = pkg.bonus.messages;
|
|
11
|
+
const service = pkg.bonus.service;
|
|
12
|
+
function previous(file) {
|
|
13
|
+
const source = execFileSync('git', ['show', `4e2cfdb:${file}`], { encoding: 'utf8', maxBuffer: 8 * 1024 * 1024 });
|
|
14
|
+
const sandbox = { exports: {}, proto: {}, require: createRequire(path.resolve(__dirname, '..', file)) };
|
|
15
|
+
sandbox.global = sandbox;
|
|
16
|
+
vm.runInNewContext(source, sandbox);
|
|
17
|
+
return sandbox.exports;
|
|
18
|
+
}
|
|
19
|
+
async function main() {
|
|
20
|
+
const oldService = previous('bonus/bonus_grpc_pb.js');
|
|
21
|
+
const oldMessages = previous('bonus/bonus_pb.js');
|
|
22
|
+
assert.deepEqual(Object.keys(service.BonusService).filter(k => k !== 'resolveProviderRewardWinnings'), Object.keys(oldService.BonusService));
|
|
23
|
+
for (const [name, method] of Object.entries(oldService.BonusService)) {
|
|
24
|
+
const now = service.BonusService[name];
|
|
25
|
+
for (const key of ['path', 'requestStream', 'responseStream']) assert.equal(now[key], method[key]);
|
|
26
|
+
}
|
|
27
|
+
const priorProto = execFileSync('git', ['show', '4e2cfdb:bonus/bonus.proto'], { encoding: 'utf8' });
|
|
28
|
+
const retained = fs.readFileSync(path.join(__dirname, '../bonus/bonus.proto'), 'utf8')
|
|
29
|
+
.split('\n// Authoritative provider units, never account/session-converted values.')[0]
|
|
30
|
+
.replace(' // Resolve a durable provider reward identity before any winnings wallet mutation.\n rpc resolveProviderRewardWinnings(ResolveProviderRewardWinningsRequest) returns (ResolveProviderRewardWinningsResponse);\n', '');
|
|
31
|
+
assert.equal(retained.trimEnd(), priorProto.trimEnd());
|
|
32
|
+
const request = new messages.ResolveProviderRewardWinningsRequest();
|
|
33
|
+
request.setUserId(462); request.setProviderRewardId('provider-reward-1');
|
|
34
|
+
request.setProviderTransactionId('provider-tx-1'); request.setProviderCurrency('EUR');
|
|
35
|
+
request.setProviderCurrencyScale(2); request.setProviderAmountMinor('123456789012345678901234567890123456');
|
|
36
|
+
const r = messages.ResolveProviderRewardWinningsRequest.deserializeBinary(request.serializeBinary());
|
|
37
|
+
assert.equal(r.getProviderAmountMinor(), request.getProviderAmountMinor());
|
|
38
|
+
assert.equal(r.getProviderTransactionId(), 'provider-tx-1');
|
|
39
|
+
assert.equal(r.getProviderCurrencyScale(), 2);
|
|
40
|
+
const response = new messages.ResolveProviderRewardWinningsResponse();
|
|
41
|
+
assert.equal(response.getMode(), '');
|
|
42
|
+
for (const field of ['UserBonusId', 'Currency', 'CurrencyScale', 'AmountMinor', 'ProviderWinningsFxJson']) assert.equal(response[`has${field}`](), false);
|
|
43
|
+
response.setMode('normalized'); response.setUserBonusId(2898); response.setCurrency('BTC');
|
|
44
|
+
response.setCurrencyScale(0); response.setAmountMinor('0'); response.setProviderWinningsFxJson('{"version":1}');
|
|
45
|
+
const received = messages.ResolveProviderRewardWinningsResponse.deserializeBinary(response.serializeBinary());
|
|
46
|
+
assert.equal(received.hasCurrencyScale(), true); assert.equal(received.getCurrencyScale(), 0);
|
|
47
|
+
assert.equal(received.getAmountMinor(), '0'); assert.equal(received.getMode(), 'normalized');
|
|
48
|
+
const legacy = new messages.ResolveProviderRewardWinningsResponse(); legacy.setMode('legacy');
|
|
49
|
+
assert.equal(messages.ResolveProviderRewardWinningsResponse.deserializeBinary(legacy.serializeBinary()).hasCurrency(), false);
|
|
50
|
+
const oldRequest = new oldMessages.ValidateSelectedWageringUserBonusRequest();
|
|
51
|
+
oldRequest.setUserId(462); oldRequest.setWalletCurrency('USDT');
|
|
52
|
+
assert.equal(messages.ValidateSelectedWageringUserBonusRequest.deserializeBinary(oldRequest.serializeBinary()).getWalletCurrency(), 'USDT');
|
|
53
|
+
// Actual old server: a new caller receives UNIMPLEMENTED, not an empty legacy response.
|
|
54
|
+
const server = new grpc.Server();
|
|
55
|
+
server.addService(oldService.BonusService, {});
|
|
56
|
+
const port = await new Promise((resolve, reject) => server.bindAsync('127.0.0.1:0', grpc.ServerCredentials.createInsecure(), (error, value) => error ? reject(error) : resolve(value)));
|
|
57
|
+
const client = new service.BonusClient(`127.0.0.1:${port}`, grpc.credentials.createInsecure());
|
|
58
|
+
try {
|
|
59
|
+
await assert.rejects(new Promise((resolve, reject) => client.resolveProviderRewardWinnings(request,
|
|
60
|
+
{ deadline: Date.now() + 3000 }, (error, value) => error ? reject(error) : resolve(value))),
|
|
61
|
+
error => error.code === grpc.status.UNIMPLEMENTED);
|
|
62
|
+
} finally { client.close(); server.forceShutdown(); }
|
|
63
|
+
console.log('PASS provider winnings contract: unchanged old schema/methods, exact minors, optional presence, explicit modes, old-server UNIMPLEMENTED');
|
|
64
|
+
}
|
|
65
|
+
main().catch(error => { console.error(error); process.exitCode = 1; });
|