@fintekkers/ledger-models 0.1.110 → 0.1.112
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/node/fintekkers/requests/valuation/valuation_request_pb.d.ts +7 -0
- package/node/fintekkers/requests/valuation/valuation_request_pb.js +54 -1
- package/node/wrappers/models/position/position.js +1 -1
- package/node/wrappers/models/position/position.js.map +1 -1
- package/node/wrappers/models/position/position.ts +1 -1
- package/node/wrappers/models/security/security.d.ts +8 -3
- package/node/wrappers/models/security/security.js +26 -7
- package/node/wrappers/models/security/security.js.map +1 -1
- package/node/wrappers/models/security/security.test.js +2 -2
- package/node/wrappers/models/security/security.test.js.map +1 -1
- package/node/wrappers/models/security/security.test.ts +2 -2
- package/node/wrappers/models/security/security.ts +29 -9
- package/node/wrappers/models/transaction/transaction.js +1 -1
- package/node/wrappers/models/transaction/transaction.js.map +1 -1
- package/node/wrappers/models/transaction/transaction.ts +1 -1
- package/node/wrappers/services/security-service/SecurityService.js +1 -1
- package/node/wrappers/services/security-service/SecurityService.js.map +1 -1
- package/node/wrappers/services/security-service/SecurityService.ts +1 -1
- package/node/wrappers/services/security-service/security.maturityLadder.test.js +3 -3
- package/node/wrappers/services/security-service/security.maturityLadder.test.js.map +1 -1
- package/node/wrappers/services/security-service/security.maturityLadder.test.ts +3 -3
- package/package.json +1 -1
|
@@ -8,6 +8,7 @@ import * as jspb from "google-protobuf";
|
|
|
8
8
|
import * as fintekkers_models_security_security_pb from "../../../fintekkers/models/security/security_pb";
|
|
9
9
|
import * as fintekkers_models_position_position_pb from "../../../fintekkers/models/position/position_pb";
|
|
10
10
|
import * as fintekkers_models_price_price_pb from "../../../fintekkers/models/price/price_pb";
|
|
11
|
+
import * as fintekkers_models_util_local_timestamp_pb from "../../../fintekkers/models/util/local_timestamp_pb";
|
|
11
12
|
import * as fintekkers_requests_util_operation_pb from "../../../fintekkers/requests/util/operation_pb";
|
|
12
13
|
import * as fintekkers_models_position_measure_pb from "../../../fintekkers/models/position/measure_pb";
|
|
13
14
|
|
|
@@ -38,6 +39,11 @@ export class ValuationRequestProto extends jspb.Message {
|
|
|
38
39
|
getPriceInput(): fintekkers_models_price_price_pb.PriceProto | undefined;
|
|
39
40
|
setPriceInput(value?: fintekkers_models_price_price_pb.PriceProto): ValuationRequestProto;
|
|
40
41
|
|
|
42
|
+
hasAsofDatetime(): boolean;
|
|
43
|
+
clearAsofDatetime(): void;
|
|
44
|
+
getAsofDatetime(): fintekkers_models_util_local_timestamp_pb.LocalTimestampProto | undefined;
|
|
45
|
+
setAsofDatetime(value?: fintekkers_models_util_local_timestamp_pb.LocalTimestampProto): ValuationRequestProto;
|
|
46
|
+
|
|
41
47
|
serializeBinary(): Uint8Array;
|
|
42
48
|
toObject(includeInstance?: boolean): ValuationRequestProto.AsObject;
|
|
43
49
|
static toObject(includeInstance: boolean, msg: ValuationRequestProto): ValuationRequestProto.AsObject;
|
|
@@ -57,5 +63,6 @@ export namespace ValuationRequestProto {
|
|
|
57
63
|
securityInput?: fintekkers_models_security_security_pb.SecurityProto.AsObject,
|
|
58
64
|
positionInput?: fintekkers_models_position_position_pb.PositionProto.AsObject,
|
|
59
65
|
priceInput?: fintekkers_models_price_price_pb.PriceProto.AsObject,
|
|
66
|
+
asofDatetime?: fintekkers_models_util_local_timestamp_pb.LocalTimestampProto.AsObject,
|
|
60
67
|
}
|
|
61
68
|
}
|
|
@@ -27,6 +27,8 @@ var fintekkers_models_position_position_pb = require('../../../fintekkers/models
|
|
|
27
27
|
goog.object.extend(proto, fintekkers_models_position_position_pb);
|
|
28
28
|
var fintekkers_models_price_price_pb = require('../../../fintekkers/models/price/price_pb.js');
|
|
29
29
|
goog.object.extend(proto, fintekkers_models_price_price_pb);
|
|
30
|
+
var fintekkers_models_util_local_timestamp_pb = require('../../../fintekkers/models/util/local_timestamp_pb.js');
|
|
31
|
+
goog.object.extend(proto, fintekkers_models_util_local_timestamp_pb);
|
|
30
32
|
var fintekkers_requests_util_operation_pb = require('../../../fintekkers/requests/util/operation_pb.js');
|
|
31
33
|
goog.object.extend(proto, fintekkers_requests_util_operation_pb);
|
|
32
34
|
var fintekkers_models_position_measure_pb = require('../../../fintekkers/models/position/measure_pb.js');
|
|
@@ -98,7 +100,8 @@ proto.fintekkers.requests.valuation.ValuationRequestProto.toObject = function(in
|
|
|
98
100
|
measuresList: (f = jspb.Message.getRepeatedField(msg, 30)) == null ? undefined : f,
|
|
99
101
|
securityInput: (f = msg.getSecurityInput()) && fintekkers_models_security_security_pb.SecurityProto.toObject(includeInstance, f),
|
|
100
102
|
positionInput: (f = msg.getPositionInput()) && fintekkers_models_position_position_pb.PositionProto.toObject(includeInstance, f),
|
|
101
|
-
priceInput: (f = msg.getPriceInput()) && fintekkers_models_price_price_pb.PriceProto.toObject(includeInstance, f)
|
|
103
|
+
priceInput: (f = msg.getPriceInput()) && fintekkers_models_price_price_pb.PriceProto.toObject(includeInstance, f),
|
|
104
|
+
asofDatetime: (f = msg.getAsofDatetime()) && fintekkers_models_util_local_timestamp_pb.LocalTimestampProto.toObject(includeInstance, f)
|
|
102
105
|
};
|
|
103
106
|
|
|
104
107
|
if (includeInstance) {
|
|
@@ -168,6 +171,11 @@ proto.fintekkers.requests.valuation.ValuationRequestProto.deserializeBinaryFromR
|
|
|
168
171
|
reader.readMessage(value,fintekkers_models_price_price_pb.PriceProto.deserializeBinaryFromReader);
|
|
169
172
|
msg.setPriceInput(value);
|
|
170
173
|
break;
|
|
174
|
+
case 23:
|
|
175
|
+
var value = new fintekkers_models_util_local_timestamp_pb.LocalTimestampProto;
|
|
176
|
+
reader.readMessage(value,fintekkers_models_util_local_timestamp_pb.LocalTimestampProto.deserializeBinaryFromReader);
|
|
177
|
+
msg.setAsofDatetime(value);
|
|
178
|
+
break;
|
|
171
179
|
default:
|
|
172
180
|
reader.skipField();
|
|
173
181
|
break;
|
|
@@ -249,6 +257,14 @@ proto.fintekkers.requests.valuation.ValuationRequestProto.serializeBinaryToWrite
|
|
|
249
257
|
fintekkers_models_price_price_pb.PriceProto.serializeBinaryToWriter
|
|
250
258
|
);
|
|
251
259
|
}
|
|
260
|
+
f = message.getAsofDatetime();
|
|
261
|
+
if (f != null) {
|
|
262
|
+
writer.writeMessage(
|
|
263
|
+
23,
|
|
264
|
+
f,
|
|
265
|
+
fintekkers_models_util_local_timestamp_pb.LocalTimestampProto.serializeBinaryToWriter
|
|
266
|
+
);
|
|
267
|
+
}
|
|
252
268
|
};
|
|
253
269
|
|
|
254
270
|
|
|
@@ -454,4 +470,41 @@ proto.fintekkers.requests.valuation.ValuationRequestProto.prototype.hasPriceInpu
|
|
|
454
470
|
};
|
|
455
471
|
|
|
456
472
|
|
|
473
|
+
/**
|
|
474
|
+
* optional fintekkers.models.util.LocalTimestampProto asof_datetime = 23;
|
|
475
|
+
* @return {?proto.fintekkers.models.util.LocalTimestampProto}
|
|
476
|
+
*/
|
|
477
|
+
proto.fintekkers.requests.valuation.ValuationRequestProto.prototype.getAsofDatetime = function() {
|
|
478
|
+
return /** @type{?proto.fintekkers.models.util.LocalTimestampProto} */ (
|
|
479
|
+
jspb.Message.getWrapperField(this, fintekkers_models_util_local_timestamp_pb.LocalTimestampProto, 23));
|
|
480
|
+
};
|
|
481
|
+
|
|
482
|
+
|
|
483
|
+
/**
|
|
484
|
+
* @param {?proto.fintekkers.models.util.LocalTimestampProto|undefined} value
|
|
485
|
+
* @return {!proto.fintekkers.requests.valuation.ValuationRequestProto} returns this
|
|
486
|
+
*/
|
|
487
|
+
proto.fintekkers.requests.valuation.ValuationRequestProto.prototype.setAsofDatetime = function(value) {
|
|
488
|
+
return jspb.Message.setWrapperField(this, 23, value);
|
|
489
|
+
};
|
|
490
|
+
|
|
491
|
+
|
|
492
|
+
/**
|
|
493
|
+
* Clears the message field making it undefined.
|
|
494
|
+
* @return {!proto.fintekkers.requests.valuation.ValuationRequestProto} returns this
|
|
495
|
+
*/
|
|
496
|
+
proto.fintekkers.requests.valuation.ValuationRequestProto.prototype.clearAsofDatetime = function() {
|
|
497
|
+
return this.setAsofDatetime(undefined);
|
|
498
|
+
};
|
|
499
|
+
|
|
500
|
+
|
|
501
|
+
/**
|
|
502
|
+
* Returns whether this field is set.
|
|
503
|
+
* @return {boolean}
|
|
504
|
+
*/
|
|
505
|
+
proto.fintekkers.requests.valuation.ValuationRequestProto.prototype.hasAsofDatetime = function() {
|
|
506
|
+
return jspb.Message.getField(this, 23) != null;
|
|
507
|
+
};
|
|
508
|
+
|
|
509
|
+
|
|
457
510
|
goog.object.extend(exports, proto.fintekkers.requests.valuation);
|
|
@@ -72,7 +72,7 @@ class Position {
|
|
|
72
72
|
return unpackedValue; //instanceof PriceProto || TenorProto
|
|
73
73
|
}
|
|
74
74
|
if (field_pb_1.FieldProto.SECURITY == fieldToGet.getField()) {
|
|
75
|
-
return
|
|
75
|
+
return security_1.default.create(unpackedValue);
|
|
76
76
|
}
|
|
77
77
|
if (field_pb_1.FieldProto.PORTFOLIO == fieldToGet.getField()) {
|
|
78
78
|
return new portfolio_1.default(unpackedValue);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"position.js","sourceRoot":"","sources":["position.ts"],"names":[],"mappings":";;;;;;AAAA,QAAQ;AACR,2EAA0E;AAC1E,iFAAgF;AAChF,2FAAsG;AACtG,uEAA+C;AAC/C,oEAA4C;AAC5C,+EAA8E;AAE9E,0DAAgE;AAChE,kDAA+C;AAC/C,mCAAgC;AAChC,wCAAqC;AACrC,gDAAkD;AAClD,wEAAuE;AACvE,6EAAqD;AAErD,qEAAoE;AACpE,2FAAyF;AACzF,iFAA+E;AAC/E,gGAA+F;AAC/F,iFAAgF;AAChF,2EAA0E;AAC1E,oFAAmF;AACnF,iFAAgF;AAEhF,6EAA0E;AAC1E,MAAa,QAAQ;IAGnB,YAAY,aAA4B;QACtC,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC;IAC7B,CAAC;IAED,OAAO;IACP,MAAM;QACJ,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,wCAAwC;SAC9E,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAS;QACvB,OAAO,IAAI,QAAQ,CAAC,2BAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;IAEM,aAAa,CAAC,KAAiB;QACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,gCAAa,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5D,CAAC;IAEM,QAAQ,CAAC,UAAyB;QACvC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,CAAC;YAClD,IAAI,QAAQ,CAAC,QAAQ,EAAE,KAAK,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC;gBAElD,IAAI,QAAQ,CAAC,cAAc,EAAE,KAAK,SAAS,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpF,OAAO,QAAQ,CAAC,cAAc,EAAE,CAAC;gBACnC,CAAC;gBAED,IAAI,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,EAAE,CAAC;oBAChC,IAAI,SAAS,GAAW,IAAI,aAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;oBACnE,IAAI,KAAK,GAAc,qBAAS,CAAC,YAAY,CAAC,SAAS,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;oBAClF,OAAO,KAAK,CAAC;gBACf,CAAC;qBAAM,IAAI,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE;oBACnE,CAAC,QAAQ,CAAC,mBAAmB,EAAE,EAAE,CAAC;oBAClC,OAAO,CAAC,GAAG,CAAC,4FAA4F,CAAC,CAAC;oBAC1G,IAAI,SAAS,GAAW,IAAI,aAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;oBACnE,IAAI,KAAK,GAAc,qBAAS,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;oBAC5D,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,MAAM,aAAa,GAAG,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAErD,IAAI,qBAAU,CAAC,KAAK,IAAI,UAAU,CAAC,QAAQ,EAAE;uBACxC,qBAAU,CAAC,KAAK,IAAI,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC;oBAC/C,OAAO,aAAa,CAAC,CAAC,qCAAqC;gBAC7D,CAAC;gBAED,IAAI,qBAAU,CAAC,QAAQ,IAAI,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC;oBACjD,OAAO,
|
|
1
|
+
{"version":3,"file":"position.js","sourceRoot":"","sources":["position.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,9 +3,14 @@ import { IdentifierProto } from "../../../fintekkers/models/security/identifier/
|
|
|
3
3
|
import { SecurityProto } from "../../../fintekkers/models/security/security_pb";
|
|
4
4
|
import { ZonedDateTime } from "../utils/datetime";
|
|
5
5
|
import { UUID } from "../utils/uuid";
|
|
6
|
+
import { LocalDate } from "../utils/date";
|
|
6
7
|
declare class Security {
|
|
7
8
|
proto: SecurityProto;
|
|
8
9
|
constructor(proto: SecurityProto);
|
|
10
|
+
/**
|
|
11
|
+
* Factory method to create the appropriate Security subclass based on security type
|
|
12
|
+
*/
|
|
13
|
+
static create(proto: SecurityProto): Security;
|
|
9
14
|
toString(): string;
|
|
10
15
|
getFields(): FieldProto[];
|
|
11
16
|
getField(field: FieldProto): any;
|
|
@@ -13,10 +18,10 @@ declare class Security {
|
|
|
13
18
|
getAsOf(): ZonedDateTime;
|
|
14
19
|
getAssetClass(): string;
|
|
15
20
|
getProductClass(): string;
|
|
16
|
-
getProductType():
|
|
21
|
+
getProductType(): string;
|
|
17
22
|
getSecurityID(): IdentifierProto;
|
|
18
|
-
getIssueDate():
|
|
19
|
-
getMaturityDate():
|
|
23
|
+
getIssueDate(): LocalDate;
|
|
24
|
+
getMaturityDate(): LocalDate;
|
|
20
25
|
getIssuerName(): string;
|
|
21
26
|
equals(other: Security): boolean;
|
|
22
27
|
}
|
|
@@ -3,11 +3,25 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const field_pb_1 = require("../../../fintekkers/models/position/field_pb");
|
|
4
4
|
const datetime_1 = require("../utils/datetime");
|
|
5
5
|
const uuid_1 = require("../utils/uuid");
|
|
6
|
-
const
|
|
6
|
+
const date_1 = require("../utils/date");
|
|
7
|
+
const security_type_pb_1 = require("../../../fintekkers/models/security/security_type_pb");
|
|
7
8
|
class Security {
|
|
8
9
|
constructor(proto) {
|
|
9
10
|
this.proto = proto;
|
|
10
11
|
}
|
|
12
|
+
/**
|
|
13
|
+
* Factory method to create the appropriate Security subclass based on security type
|
|
14
|
+
*/
|
|
15
|
+
static create(proto) {
|
|
16
|
+
switch (proto.getSecurityType()) {
|
|
17
|
+
case security_type_pb_1.SecurityTypeProto.BOND_SECURITY:
|
|
18
|
+
// Lazy import to avoid circular dependency
|
|
19
|
+
const BondSecurity = require('./BondSecurity').default;
|
|
20
|
+
return new BondSecurity(proto);
|
|
21
|
+
default:
|
|
22
|
+
return new Security(proto);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
11
25
|
toString() {
|
|
12
26
|
return `ID[${this.getID().toString()}], ${this.getSecurityID()}[${this.getIssuerName()}]`;
|
|
13
27
|
}
|
|
@@ -33,7 +47,9 @@ class Security {
|
|
|
33
47
|
case field_pb_1.FieldProto.ADJUSTED_TENOR:
|
|
34
48
|
throw new Error('Not implemented yet');
|
|
35
49
|
case field_pb_1.FieldProto.MATURITY_DATE:
|
|
36
|
-
|
|
50
|
+
return this.getMaturityDate();
|
|
51
|
+
case field_pb_1.FieldProto.ISSUE_DATE:
|
|
52
|
+
return this.getIssueDate();
|
|
37
53
|
default:
|
|
38
54
|
throw new Error(`Field not mapped in Security wrapper: ${field}`);
|
|
39
55
|
}
|
|
@@ -57,7 +73,10 @@ class Security {
|
|
|
57
73
|
throw new Error('Not implemented yet. See Java implementation for reference');
|
|
58
74
|
}
|
|
59
75
|
getProductType() {
|
|
60
|
-
|
|
76
|
+
let securityType = this.proto.getSecurityType();
|
|
77
|
+
let securityTypeString = security_type_pb_1.SecurityTypeProto[securityType];
|
|
78
|
+
;
|
|
79
|
+
return securityTypeString;
|
|
61
80
|
}
|
|
62
81
|
getSecurityID() {
|
|
63
82
|
const identifier = this.proto.getIdentifier();
|
|
@@ -68,14 +87,14 @@ class Security {
|
|
|
68
87
|
getIssueDate() {
|
|
69
88
|
const date = this.proto.getIssueDate();
|
|
70
89
|
if (!date)
|
|
71
|
-
throw new Error("
|
|
72
|
-
return
|
|
90
|
+
throw new Error("Issue date is required");
|
|
91
|
+
return new date_1.LocalDate(date);
|
|
73
92
|
}
|
|
74
93
|
getMaturityDate() {
|
|
75
94
|
const date = this.proto.getMaturityDate();
|
|
76
95
|
if (!date)
|
|
77
|
-
throw new Error("
|
|
78
|
-
return
|
|
96
|
+
throw new Error("Maturity date is required");
|
|
97
|
+
return new date_1.LocalDate(date);
|
|
79
98
|
}
|
|
80
99
|
getIssuerName() {
|
|
81
100
|
return this.proto.getIssuerName();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security.js","sourceRoot":"","sources":["security.ts"],"names":[],"mappings":";;AAAA,2EAA0E;AAG1E,gDAAkD;AAClD,wCAAqC;
|
|
1
|
+
{"version":3,"file":"security.js","sourceRoot":"","sources":["security.ts"],"names":[],"mappings":";;AAAA,2EAA0E;AAG1E,gDAAkD;AAClD,wCAAqC;AAErC,wCAA0C;AAC1C,2FAAyF;AAEzF,MAAM,QAAQ;IAGZ,YAAY,KAAoB;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,KAAoB;QAChC,QAAQ,KAAK,CAAC,eAAe,EAAE,EAAE,CAAC;YAChC,KAAK,oCAAiB,CAAC,aAAa;gBAClC,2CAA2C;gBAC3C,MAAM,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC;gBACvD,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;YACjC;gBACE,OAAO,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,QAAQ;QACN,OAAO,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,aAAa,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC;IAC5F,CAAC;IAED,SAAS;QACP,OAAO,CAAC,qBAAU,CAAC,EAAE,EAAE,qBAAU,CAAC,WAAW,EAAE,qBAAU,CAAC,KAAK,EAAE,qBAAU,CAAC,WAAW,EAAE,qBAAU,CAAC,UAAU,CAAC,CAAC;IAClH,CAAC;IAED,QAAQ,CAAC,KAAiB;QACxB,QAAQ,KAAK,EAAE,CAAC;YACd,KAAK,qBAAU,CAAC,EAAE,CAAC;YACnB,KAAK,qBAAU,CAAC,WAAW;gBACzB,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;YACtB,KAAK,qBAAU,CAAC,KAAK;gBACnB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;YACxB,KAAK,qBAAU,CAAC,WAAW;gBACzB,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;YAC9B,KAAK,qBAAU,CAAC,aAAa;gBAC3B,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;YAChC,KAAK,qBAAU,CAAC,YAAY;gBAC1B,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;YAC/B,KAAK,qBAAU,CAAC,UAAU;gBACxB,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;YAC9B,KAAK,qBAAU,CAAC,KAAK,CAAC;YACtB,KAAK,qBAAU,CAAC,cAAc;gBAC5B,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,KAAK,qBAAU,CAAC,aAAa;gBAC3B,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;YAChC,KAAK,qBAAU,CAAC,UAAU;gBACxB,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;YAC7B;gBACE,MAAM,IAAI,KAAK,CAAC,yCAAyC,KAAK,EAAE,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAED,KAAK;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAC/C,OAAO,WAAI,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,OAAO;QACL,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAC/C,OAAO,IAAI,wBAAa,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;IACpC,CAAC;IAED,eAAe;QACb,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChF,CAAC;IAED,cAAc;QACZ,IAAI,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;QAChD,IAAI,kBAAkB,GAAG,oCAAiB,CAAC,YAAY,CAAC,CAAC;QAAA,CAAC;QAC1D,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED,aAAa;QACX,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;QAC9C,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC3D,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,YAAY;QACV,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QACvC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACrD,OAAO,IAAI,gBAAS,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,eAAe;QACb,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1C,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACxD,OAAO,IAAI,gBAAS,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,KAAe;QACpB,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CACF;AAED,kBAAe,QAAQ,CAAC"}
|
|
@@ -17,10 +17,10 @@ test('test the security wrapper', () => {
|
|
|
17
17
|
});
|
|
18
18
|
function testSerialization() {
|
|
19
19
|
const security = dummySecurity();
|
|
20
|
-
assert(security.getMaturityDate().getFullYear() == 2026);
|
|
20
|
+
assert(security.getMaturityDate().toDate().getFullYear() == 2026);
|
|
21
21
|
}
|
|
22
22
|
function dummySecurity() {
|
|
23
|
-
return
|
|
23
|
+
return security_1.default.create(new security_pb_1.SecurityProto()
|
|
24
24
|
.setObjectClass('Transaction').setVersion('0.0.1').setUuid(uuid_1.UUID.random().toUUIDProto())
|
|
25
25
|
.setFaceValue(new decimal_value_pb_1.DecimalValueProto().setArbitraryPrecisionValue('1000.00'))
|
|
26
26
|
.setQuantityType(security_quantity_type_pb_1.SecurityQuantityTypeProto.ORIGINAL_FACE_VALUE)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security.test.js","sourceRoot":"","sources":["security.test.ts"],"names":[],"mappings":";;;;;AAAA,iFAA+E;AAC/E,wCAAqC;AAErC,iCAAkC;AAClC,0DAAkC;AAElC,uFAAqF;AACrF,iFAAgF;AAChF,iGAA+F;AAC/F,uFAAqF;AACrF,6GAA0G;AAG1G,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACnC,iBAAiB,EAAE,CAAC;AACxB,CAAC,CAAC,CAAC;AAEH,SAAS,iBAAiB;IACtB,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAC;IAEjC,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"security.test.js","sourceRoot":"","sources":["security.test.ts"],"names":[],"mappings":";;;;;AAAA,iFAA+E;AAC/E,wCAAqC;AAErC,iCAAkC;AAClC,0DAAkC;AAElC,uFAAqF;AACrF,iFAAgF;AAChF,iGAA+F;AAC/F,uFAAqF;AACrF,6GAA0G;AAG1G,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACnC,iBAAiB,EAAE,CAAC;AACxB,CAAC,CAAC,CAAC;AAEH,SAAS,iBAAiB;IACtB,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAC;IAEjC,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,aAAa;IAClB,OAAO,kBAAQ,CAAC,MAAM,CAAC,IAAI,2BAAa,EAAE;SACrC,cAAc,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,WAAI,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC;SACtF,YAAY,CAAC,IAAI,oCAAiB,EAAE,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC;SAC3E,eAAe,CAAC,qDAAyB,CAAC,mBAAmB,CAAC;SAC9D,aAAa,CAAC,MAAM,CAAC;SACrB,aAAa,CAAC,cAAc,CAAC;SAE7B,aAAa,CAAC,IAAI,oCAAiB,EAAE,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;SACzE,kBAAkB,CAAC,0CAAoB,CAAC,YAAY,CAAC;SACrD,aAAa,CAAC,gCAAe,CAAC,KAAK,CAAC;SAEpC,eAAe,CAAC,IAAI,8BAAc,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;SACzE,YAAY,CAAC,IAAI,8BAAc,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;SACtE,cAAc,CAAC,gBAAgB,CAAC,CACpC,CAAC;AACN,CAAC"}
|
|
@@ -18,11 +18,11 @@ test('test the security wrapper', () => {
|
|
|
18
18
|
function testSerialization(): void {
|
|
19
19
|
const security = dummySecurity();
|
|
20
20
|
|
|
21
|
-
assert(security.getMaturityDate().getFullYear() == 2026);
|
|
21
|
+
assert(security.getMaturityDate().toDate().getFullYear() == 2026);
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
function dummySecurity() {
|
|
25
|
-
return
|
|
25
|
+
return Security.create(new SecurityProto()
|
|
26
26
|
.setObjectClass('Transaction').setVersion('0.0.1').setUuid(UUID.random().toUUIDProto())
|
|
27
27
|
.setFaceValue(new DecimalValueProto().setArbitraryPrecisionValue('1000.00'))
|
|
28
28
|
.setQuantityType(SecurityQuantityTypeProto.ORIGINAL_FACE_VALUE)
|
|
@@ -4,6 +4,8 @@ import { SecurityProto } from "../../../fintekkers/models/security/security_pb";
|
|
|
4
4
|
import { ZonedDateTime } from "../utils/datetime";
|
|
5
5
|
import { UUID } from "../utils/uuid";
|
|
6
6
|
import { ProtoSerializationUtil } from '../utils/serialization';
|
|
7
|
+
import { LocalDate } from "../utils/date";
|
|
8
|
+
import { SecurityTypeProto } from "../../../fintekkers/models/security/security_type_pb";
|
|
7
9
|
|
|
8
10
|
class Security {
|
|
9
11
|
proto: SecurityProto;
|
|
@@ -12,6 +14,20 @@ class Security {
|
|
|
12
14
|
this.proto = proto;
|
|
13
15
|
}
|
|
14
16
|
|
|
17
|
+
/**
|
|
18
|
+
* Factory method to create the appropriate Security subclass based on security type
|
|
19
|
+
*/
|
|
20
|
+
static create(proto: SecurityProto): Security {
|
|
21
|
+
switch (proto.getSecurityType()) {
|
|
22
|
+
case SecurityTypeProto.BOND_SECURITY:
|
|
23
|
+
// Lazy import to avoid circular dependency
|
|
24
|
+
const BondSecurity = require('./BondSecurity').default;
|
|
25
|
+
return new BondSecurity(proto);
|
|
26
|
+
default:
|
|
27
|
+
return new Security(proto);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
15
31
|
toString(): string {
|
|
16
32
|
return `ID[${this.getID().toString()}], ${this.getSecurityID()}[${this.getIssuerName()}]`;
|
|
17
33
|
}
|
|
@@ -39,7 +55,9 @@ class Security {
|
|
|
39
55
|
case FieldProto.ADJUSTED_TENOR:
|
|
40
56
|
throw new Error('Not implemented yet');
|
|
41
57
|
case FieldProto.MATURITY_DATE:
|
|
42
|
-
|
|
58
|
+
return this.getMaturityDate();
|
|
59
|
+
case FieldProto.ISSUE_DATE:
|
|
60
|
+
return this.getIssueDate();
|
|
43
61
|
default:
|
|
44
62
|
throw new Error(`Field not mapped in Security wrapper: ${field}`);
|
|
45
63
|
}
|
|
@@ -65,8 +83,10 @@ class Security {
|
|
|
65
83
|
throw new Error('Not implemented yet. See Java implementation for reference');
|
|
66
84
|
}
|
|
67
85
|
|
|
68
|
-
getProductType():
|
|
69
|
-
|
|
86
|
+
getProductType(): string {
|
|
87
|
+
let securityType = this.proto.getSecurityType();
|
|
88
|
+
let securityTypeString = SecurityTypeProto[securityType];;
|
|
89
|
+
return securityTypeString;
|
|
70
90
|
}
|
|
71
91
|
|
|
72
92
|
getSecurityID(): IdentifierProto {
|
|
@@ -75,16 +95,16 @@ class Security {
|
|
|
75
95
|
return identifier;
|
|
76
96
|
}
|
|
77
97
|
|
|
78
|
-
getIssueDate():
|
|
98
|
+
getIssueDate(): LocalDate {
|
|
79
99
|
const date = this.proto.getIssueDate();
|
|
80
|
-
if (!date) throw new Error("
|
|
81
|
-
return
|
|
100
|
+
if (!date) throw new Error("Issue date is required");
|
|
101
|
+
return new LocalDate(date);
|
|
82
102
|
}
|
|
83
103
|
|
|
84
|
-
getMaturityDate():
|
|
104
|
+
getMaturityDate(): LocalDate {
|
|
85
105
|
const date = this.proto.getMaturityDate();
|
|
86
|
-
if (!date) throw new Error("
|
|
87
|
-
return
|
|
106
|
+
if (!date) throw new Error("Maturity date is required");
|
|
107
|
+
return new LocalDate(date);
|
|
88
108
|
}
|
|
89
109
|
|
|
90
110
|
getIssuerName(): string {
|
|
@@ -81,7 +81,7 @@ class Transaction {
|
|
|
81
81
|
const security = this.proto.getSecurity();
|
|
82
82
|
if (!security)
|
|
83
83
|
throw new Error("Security is required");
|
|
84
|
-
return
|
|
84
|
+
return security_1.default.create(security);
|
|
85
85
|
}
|
|
86
86
|
getStrategyAllocation() {
|
|
87
87
|
const allocation = this.proto.getStrategyAllocation();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["transaction.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["transaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -93,7 +93,7 @@ class Transaction {
|
|
|
93
93
|
getSecurity(): Security {
|
|
94
94
|
const security = this.proto.getSecurity();
|
|
95
95
|
if (!security) throw new Error("Security is required");
|
|
96
|
-
return
|
|
96
|
+
return Security.create(security);
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
getStrategyAllocation(): StrategyAllocationProto {
|
|
@@ -91,7 +91,7 @@ class SecurityService {
|
|
|
91
91
|
return new Promise((resolve, reject) => {
|
|
92
92
|
stream2.on('data', (response) => {
|
|
93
93
|
response.getSecurityResponseList().forEach((security) => {
|
|
94
|
-
listSecurities.push(
|
|
94
|
+
listSecurities.push(security_1.default.create(security));
|
|
95
95
|
});
|
|
96
96
|
});
|
|
97
97
|
stream2.on('end', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecurityService.js","sourceRoot":"","sources":["SecurityService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAiC;AAMjC,8EAAsD;AAItD,gEAAkD;AAElD,sBAAsB;AACtB,qHAAwG;AACxG,+GAA4G;AAE5G,iHAA8G;AAG9G,uFAA0D;AAE1D,MAAM,eAAe;IAGnB;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,yCAAc,CAAC,wBAAS,CAAC,MAAM,EAAE,wBAAS,CAAC,cAAc,CAAC,CAAC;IAC/E,CAAC;IAEK,sBAAsB,CAAC,QAAuB;;YAClD,MAAM,aAAa,GAAG,IAAI,uDAA0B,EAAE,CAAC;YACvD,aAAa,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;YAChD,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAClC,aAAa,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YAEzC,MAAM,2BAA2B,GAAG,IAAA,gBAAS,EAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACpG,MAAM,QAAQ,GAAG,MAAM,2BAA2B,CAAC,aAAa,CAAC,CAAC;YAClE,OAAO,QAAwB,CAAC;QAClC,CAAC;KAAA;IAEK,cAAc,CAAC,QAAuB;;YAC1C,MAAM,aAAa,GAAG,IAAI,uDAA0B,EAAE,CAAC;YACvD,aAAa,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;YAChD,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAClC,aAAa,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YAEzC,MAAM,mBAAmB,GAAG,IAAA,gBAAS,EAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACpF,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,aAAa,CAAC,CAAC;YAC1D,OAAO,QAAuC,CAAC;QACjD,CAAC;KAAA;IAEK,qBAAqB,CAAC,cAA8B;;YACxD,MAAM,GAAG,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAClD,CAAC;KAAA;IAEK,cAAc,CAAC,IAAyB,EAAE,cAA8B;;YAC5E,MAAM,aAAa,GAAG,IAAI,qDAAyB,EAAE,CAAC;YACtD,aAAa,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;YAChD,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAClC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAE5B,aAAa,CAAC,sBAAsB,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC;YAE/D,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;YAE9B,MAAM,cAAc,GAAe,EAAE,CAAC;YAEtC,SAAe,0BAA0B;;oBACvC,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;oBAEhD,OAAO,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;wBACjD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,QAAoC,EAAE,EAAE;4BAC1D,QAAQ,CAAC,uBAAuB,EAAE,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gCACtD,cAAc,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"SecurityService.js","sourceRoot":"","sources":["SecurityService.ts"],"names":[],"mappings":"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"}
|
|
@@ -71,7 +71,7 @@ class SecurityService {
|
|
|
71
71
|
return new Promise<Security[]>((resolve, reject) => {
|
|
72
72
|
stream2.on('data', (response: QuerySecurityResponseProto) => {
|
|
73
73
|
response.getSecurityResponseList().forEach((security) => {
|
|
74
|
-
listSecurities.push(
|
|
74
|
+
listSecurities.push(Security.create(security));
|
|
75
75
|
});
|
|
76
76
|
});
|
|
77
77
|
|
|
@@ -31,10 +31,10 @@ test('test the api.fintekkers.org security service by creating a maturity ladder
|
|
|
31
31
|
let issuanceList = security.proto.getIssuanceInfoList();
|
|
32
32
|
let issuance = issuanceList && issuanceList.length > 0 ? issuanceList[0] : null;
|
|
33
33
|
if (issuance) {
|
|
34
|
-
if (!issuance.getPostAuctionOutstandingQuantity() && security.getMaturityDate().getFullYear() > 2009) {
|
|
35
|
-
console.log("Issed with %s, issuance: %s", security.getSecurityID().getIdentifierValue(), issuance);
|
|
34
|
+
if (!issuance.getPostAuctionOutstandingQuantity() && security.getMaturityDate().toDate().getFullYear() > 2009) {
|
|
35
|
+
// console.log("Issed with %s, issuance: %s", security.getSecurityID().getIdentifierValue(), issuance);
|
|
36
36
|
}
|
|
37
|
-
else if (!issuance.getPostAuctionOutstandingQuantity() && security.getMaturityDate().getFullYear() <= 2009) {
|
|
37
|
+
else if (!issuance.getPostAuctionOutstandingQuantity() && security.getMaturityDate().toDate().getFullYear() <= 2009) {
|
|
38
38
|
//Swallow this data gap. It's old and we don't mind
|
|
39
39
|
}
|
|
40
40
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security.maturityLadder.test.js","sourceRoot":"","sources":["security.maturityLadder.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,iCAAkC;AAElC,SAAS;AAET,cAAc;AACd,2EAA0E;AAC1E,uDAAoD;AACpD,yEAAsE;AAEtE,oEAA0E;AAE1E,IAAI,CAAC,kGAAkG,EAAE,GAAS,EAAE;IAChH,6FAA6F;IAC7F,MAAM,eAAe,GAAG,IAAI,iCAAe,EAAE,CAAC;IAE9C,MAAM,cAAc,GAAG,IAAI,+BAAc,EAAE,CAAC;IAC5C,cAAc,CAAC,eAAe,CAAC,qBAAU,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACvE,cAAc,CAAC,eAAe,CAAC,qBAAU,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;IAEjF,IAAI,UAAU,GAAG,MAAM,eAAe,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;IAE7E,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC9B,IAAI,OAAO,GAAG,EAAE,CAAC;IAEjB,+CAA+C;IAC/C,KAAK,IAAI,KAAK,IAAI,UAAU,EAAE,CAAC;QAC3B,IAAI,QAAQ,GAAa,UAAU,CAAC,KAAK,CAAC,CAAC;QAE3C,IAAI,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;QACxD,IAAI,QAAQ,GAAG,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAEhF,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC,QAAQ,CAAC,iCAAiC,EAAE,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"security.maturityLadder.test.js","sourceRoot":"","sources":["security.maturityLadder.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,iCAAkC;AAElC,SAAS;AAET,cAAc;AACd,2EAA0E;AAC1E,uDAAoD;AACpD,yEAAsE;AAEtE,oEAA0E;AAE1E,IAAI,CAAC,kGAAkG,EAAE,GAAS,EAAE;IAChH,6FAA6F;IAC7F,MAAM,eAAe,GAAG,IAAI,iCAAe,EAAE,CAAC;IAE9C,MAAM,cAAc,GAAG,IAAI,+BAAc,EAAE,CAAC;IAC5C,cAAc,CAAC,eAAe,CAAC,qBAAU,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACvE,cAAc,CAAC,eAAe,CAAC,qBAAU,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;IAEjF,IAAI,UAAU,GAAG,MAAM,eAAe,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;IAE7E,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC9B,IAAI,OAAO,GAAG,EAAE,CAAC;IAEjB,+CAA+C;IAC/C,KAAK,IAAI,KAAK,IAAI,UAAU,EAAE,CAAC;QAC3B,IAAI,QAAQ,GAAa,UAAU,CAAC,KAAK,CAAC,CAAC;QAE3C,IAAI,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;QACxD,IAAI,QAAQ,GAAG,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAEhF,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC,QAAQ,CAAC,iCAAiC,EAAE,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,GAAG,IAAI,EAAE,CAAC;gBAC5G,uGAAuG;YAC3G,CAAC;iBAAM,IAAI,CAAC,QAAQ,CAAC,iCAAiC,EAAE,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC;gBACpH,mDAAmD;YACvD,CAAC;iBAAM,CAAC;gBACJ,IAAI,mBAAmB,GAAW,sCAAsB,CAAC,WAAW,CAAC,QAAQ,CAAC,iCAAiC,EAAE,CAAW,CAAC;gBAC7H,IAAI,EAAE,GAAW,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,CAAC;gBAExH,IAAI,MAAM,GAAG;oBACT,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE,QAAQ,CAAC,YAAY,EAAE;oBACpC,mBAAmB,EAAE,mBAAmB;oBACxC,cAAc,EAAE,QAAQ,CAAC,eAAe,EAAE;iBAC7C,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC;QACL,CAAC;IACL,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAA,EAAE,KAAK,CAAC,CAAC"}
|
|
@@ -30,9 +30,9 @@ test('test the api.fintekkers.org security service by creating a maturity ladder
|
|
|
30
30
|
let issuance = issuanceList && issuanceList.length > 0 ? issuanceList[0] : null;
|
|
31
31
|
|
|
32
32
|
if (issuance) {
|
|
33
|
-
if (!issuance.getPostAuctionOutstandingQuantity() && security.getMaturityDate().getFullYear() > 2009) {
|
|
34
|
-
console.log("Issed with %s, issuance: %s", security.getSecurityID().getIdentifierValue(), issuance);
|
|
35
|
-
} else if (!issuance.getPostAuctionOutstandingQuantity() && security.getMaturityDate().getFullYear() <= 2009) {
|
|
33
|
+
if (!issuance.getPostAuctionOutstandingQuantity() && security.getMaturityDate().toDate().getFullYear() > 2009) {
|
|
34
|
+
// console.log("Issed with %s, issuance: %s", security.getSecurityID().getIdentifierValue(), issuance);
|
|
35
|
+
} else if (!issuance.getPostAuctionOutstandingQuantity() && security.getMaturityDate().toDate().getFullYear() <= 2009) {
|
|
36
36
|
//Swallow this data gap. It's old and we don't mind
|
|
37
37
|
} else {
|
|
38
38
|
let postAuctionQuantity: number = ProtoSerializationUtil.deserialize(issuance.getPostAuctionOutstandingQuantity()) as number;
|