@fintekkers/ledger-models 0.1.116 → 0.1.117

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.
Files changed (38) hide show
  1. package/node/wrappers/models/position/position.d.ts +2 -1
  2. package/node/wrappers/models/position/position.js.map +1 -1
  3. package/node/wrappers/models/position/position.ts +3 -2
  4. package/node/wrappers/models/position/positionfilter.d.ts +2 -0
  5. package/node/wrappers/models/position/positionfilter.js +9 -0
  6. package/node/wrappers/models/position/positionfilter.js.map +1 -1
  7. package/node/wrappers/models/position/positionfilter.test.d.ts +1 -0
  8. package/node/wrappers/models/position/positionfilter.test.js +132 -0
  9. package/node/wrappers/models/position/positionfilter.test.js.map +1 -0
  10. package/node/wrappers/models/position/positionfilter.test.ts +161 -0
  11. package/node/wrappers/models/position/positionfilter.ts +11 -0
  12. package/node/wrappers/models/security/coupon_type.test.js +1 -1
  13. package/node/wrappers/models/security/coupon_type.test.js.map +1 -1
  14. package/node/wrappers/models/security/coupon_type.test.ts +1 -1
  15. package/node/wrappers/models/security/identifier.d.ts +29 -0
  16. package/node/wrappers/models/security/identifier.js +51 -0
  17. package/node/wrappers/models/security/identifier.js.map +1 -0
  18. package/node/wrappers/models/security/identifier.test.d.ts +1 -0
  19. package/node/wrappers/models/security/identifier.test.js +55 -0
  20. package/node/wrappers/models/security/identifier.test.js.map +1 -0
  21. package/node/wrappers/models/security/identifier.test.ts +65 -0
  22. package/node/wrappers/models/security/identifier.ts +58 -0
  23. package/node/wrappers/models/security/term.test.js +6 -0
  24. package/node/wrappers/models/security/term.test.js.map +1 -1
  25. package/node/wrappers/models/security/term.test.ts +7 -0
  26. package/node/wrappers/models/utils/date.test.js +1 -1
  27. package/node/wrappers/models/utils/date.test.ts +1 -1
  28. package/node/wrappers/models/utils/serialization.d.ts +4 -2
  29. package/node/wrappers/models/utils/serialization.js +5 -1
  30. package/node/wrappers/models/utils/serialization.js.map +1 -1
  31. package/node/wrappers/models/utils/serialization.ts +7 -3
  32. package/node/wrappers/models/utils/serialization.util.d.ts +5 -2
  33. package/node/wrappers/models/utils/serialization.util.js +24 -1
  34. package/node/wrappers/models/utils/serialization.util.js.map +1 -1
  35. package/node/wrappers/models/utils/serialization.util.test.js.map +1 -1
  36. package/node/wrappers/models/utils/serialization.util.test.ts +3 -3
  37. package/node/wrappers/models/utils/serialization.util.ts +39 -14
  38. package/package.json +1 -1
@@ -0,0 +1,65 @@
1
+ import assert = require('assert');
2
+ import { Identifier } from './identifier';
3
+ import { IdentifierProto } from '../../../fintekkers/models/security/identifier/identifier_pb';
4
+ import { IdentifierTypeProto } from '../../../fintekkers/models/security/identifier/identifier_type_pb';
5
+
6
+ test('test Identifier.ISIN returns correct type name and toString', () => {
7
+ testIsinIdentifier();
8
+ });
9
+
10
+ test('test Identifier.CUSIP returns correct type name and toString', () => {
11
+ testCusipIdentifier();
12
+ });
13
+
14
+ test('test Identifier.EXCH_TICKER returns correct type name and toString', () => {
15
+ testExchTickerIdentifier();
16
+ });
17
+
18
+ test('test Identifier.UNKNOWN returns correct type name and toString', () => {
19
+ testUnknownIdentifier();
20
+ });
21
+
22
+ function testIsinIdentifier(): void {
23
+ const identifierProto = new IdentifierProto();
24
+ identifierProto.setIdentifierType(IdentifierTypeProto.ISIN);
25
+ identifierProto.setIdentifierValue('US0378331005');
26
+
27
+ const identifier = new Identifier(identifierProto);
28
+ assert(identifier.getIdentifierTypeName() === 'ISIN', 'Should return "ISIN"');
29
+ assert(identifier.getIdentifierValue() === 'US0378331005', 'Should return the identifier value');
30
+ assert(identifier.toString() === 'ISIN:US0378331005', 'Should return "ISIN:US0378331005"');
31
+ }
32
+
33
+ function testCusipIdentifier(): void {
34
+ const identifierProto = new IdentifierProto();
35
+ identifierProto.setIdentifierType(IdentifierTypeProto.CUSIP);
36
+ identifierProto.setIdentifierValue('037833100');
37
+
38
+ const identifier = new Identifier(identifierProto);
39
+ assert(identifier.getIdentifierTypeName() === 'CUSIP', 'Should return "CUSIP"');
40
+ assert(identifier.getIdentifierValue() === '037833100', 'Should return the identifier value');
41
+ assert(identifier.toString() === 'CUSIP:037833100', 'Should return "CUSIP:037833100"');
42
+ }
43
+
44
+ function testExchTickerIdentifier(): void {
45
+ const identifierProto = new IdentifierProto();
46
+ identifierProto.setIdentifierType(IdentifierTypeProto.EXCH_TICKER);
47
+ identifierProto.setIdentifierValue('AAPL');
48
+
49
+ const identifier = new Identifier(identifierProto);
50
+ assert(identifier.getIdentifierTypeName() === 'EXCH_TICKER', 'Should return "EXCH_TICKER"');
51
+ assert(identifier.getIdentifierValue() === 'AAPL', 'Should return the identifier value');
52
+ assert(identifier.toString() === 'EXCH_TICKER:AAPL', 'Should return "EXCH_TICKER:AAPL"');
53
+ }
54
+
55
+ function testUnknownIdentifier(): void {
56
+ const identifierProto = new IdentifierProto();
57
+ identifierProto.setIdentifierType(IdentifierTypeProto.UNKNOWN_IDENTIFIER_TYPE);
58
+ identifierProto.setIdentifierValue('UNKNOWN123');
59
+
60
+ const identifier = new Identifier(identifierProto);
61
+ assert(identifier.getIdentifierTypeName() === 'UNKNOWN_IDENTIFIER_TYPE', 'Should return "UNKNOWN_IDENTIFIER_TYPE"');
62
+ assert(identifier.getIdentifierValue() === 'UNKNOWN123', 'Should return the identifier value');
63
+ assert(identifier.toString() === 'UNKNOWN_IDENTIFIER_TYPE:UNKNOWN123', 'Should return "UNKNOWN_IDENTIFIER_TYPE:UNKNOWN123"');
64
+ }
65
+
@@ -0,0 +1,58 @@
1
+ import { IdentifierProto } from '../../../fintekkers/models/security/identifier/identifier_pb';
2
+ import { IdentifierTypeProto } from '../../../fintekkers/models/security/identifier/identifier_type_pb';
3
+
4
+ export class Identifier {
5
+ proto: IdentifierProto;
6
+
7
+ constructor(proto: IdentifierProto) {
8
+ this.proto = proto;
9
+ }
10
+
11
+ static identifierTypeEnumMap: Map<number, string>;
12
+
13
+ static {
14
+ Identifier.identifierTypeEnumMap = new Map<number, string>();
15
+
16
+ Object.keys(IdentifierTypeProto).forEach(key => {
17
+ Identifier.identifierTypeEnumMap.set(IdentifierTypeProto[key as keyof typeof IdentifierTypeProto], key);
18
+ });
19
+ }
20
+
21
+ /**
22
+ * Returns the identifier type name based on the enum value.
23
+ * NOTE that this method is not performant and should only be used for debugging purposes,
24
+ * or infrequently. If this is required for a high performance use case, please create a
25
+ * reverse map with the enum ID as the key and the enum descriptor as the value.
26
+ *
27
+ * @returns IdentifierType as a string (e.g., "ISIN", "CUSIP", "EXCH_TICKER")
28
+ */
29
+ getIdentifierTypeName(): string {
30
+ const identifierType = this.proto.getIdentifierType();
31
+ return Identifier.identifierTypeEnumMap.get(identifierType) ?? 'UNKNOWN_IDENTIFIER_TYPE';
32
+ }
33
+
34
+ /**
35
+ * Returns the identifier value (e.g., "US0378331005" for an ISIN)
36
+ */
37
+ getIdentifierValue(): string {
38
+ return this.proto.getIdentifierValue();
39
+ }
40
+
41
+ /**
42
+ * Returns the identifier type enum value
43
+ */
44
+ getIdentifierType(): IdentifierTypeProto {
45
+ return this.proto.getIdentifierType();
46
+ }
47
+
48
+ /**
49
+ * Returns a string representation in the format: "IDENTIFIER_TYPE:identifier_value"
50
+ * Example: "ISIN:US0378331005" or "CUSIP:037833100"
51
+ */
52
+ toString(): string {
53
+ const typeName = this.getIdentifierTypeName();
54
+ const value = this.getIdentifierValue();
55
+ return `${typeName}:${value}`;
56
+ }
57
+ }
58
+
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const assert = require("assert");
4
4
  const term_1 = require("./term");
5
5
  const tenor_type_pb_1 = require("../../../fintekkers/models/security/tenor_type_pb");
6
+ const tenor_pb_1 = require("../../../fintekkers/models/security/tenor_pb");
6
7
  test('test Tenor.UNKNOWN_TENOR has correct type', () => {
7
8
  testUnknownTenor();
8
9
  });
@@ -27,6 +28,11 @@ test('test Tenor.getTenor() returns correct period', () => {
27
28
  test('test Tenor.getTenorDescription() returns correct string', () => {
28
29
  testGetTenorDescription();
29
30
  });
31
+ test('test Tenor toString', () => {
32
+ let tenorProto = new tenor_pb_1.TenorProto().setTenorType(tenor_type_pb_1.TenorTypeProto.TERM).setTermValue("2Y3M");
33
+ let tenor2 = new term_1.Tenor(tenorProto.getTenorType(), tenorProto.getTermValue());
34
+ expect(tenor2.toString()).toBe("TERM: 2Y3M");
35
+ });
30
36
  test('test Tenor.toString() returns correct representation', () => {
31
37
  testToString();
32
38
  });
@@ -1 +1 @@
1
- {"version":3,"file":"term.test.js","sourceRoot":"","sources":["term.test.ts"],"names":[],"mappings":";;AAAA,iCAAkC;AAClC,iCAAuC;AACvC,qFAAmF;AAEnF,IAAI,CAAC,2CAA2C,EAAE,GAAG,EAAE;IACnD,gBAAgB,EAAE,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;IAC/C,4BAA4B,EAAE,CAAC;AACnC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kDAAkD,EAAE,GAAG,EAAE;IAC1D,8BAA8B,EAAE,CAAC;AACrC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACrD,8BAA8B,EAAE,CAAC;AACrC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mEAAmE,EAAE,GAAG,EAAE;IAC3E,yBAAyB,EAAE,CAAC;AAChC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2CAA2C,EAAE,GAAG,EAAE;IACnD,WAAW,EAAE,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;IACtD,YAAY,EAAE,CAAC;AACnB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yDAAyD,EAAE,GAAG,EAAE;IACjE,uBAAuB,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sDAAsD,EAAE,GAAG,EAAE;IAC9D,YAAY,EAAE,CAAC;AACnB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,0DAA0D,EAAE,GAAG,EAAE;IAClE,wBAAwB,EAAE,CAAC;AAC/B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uDAAuD,EAAE,GAAG,EAAE;IAC/D,kBAAkB,EAAE,CAAC;AACzB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gDAAgD,EAAE,GAAG,EAAE;IACxD,eAAe,EAAE,CAAC;AACtB,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACrD,wBAAwB,EAAE,CAAC;AAC/B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yDAAyD,EAAE,GAAG,EAAE;IACjE,qBAAqB,EAAE,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,SAAS,gBAAgB;IACrB,MAAM,YAAY,GAAG,YAAK,CAAC,aAAa,CAAC;IACzC,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,8BAAc,CAAC,kBAAkB,EAAE,8CAA8C,CAAC,CAAC;IACrH,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,sCAAsC,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,4BAA4B;IACjC,MAAM,cAAc,GAAG,IAAI,YAAK,CAAC,8BAAc,CAAC,SAAS,CAAC,CAAC;IAC3D,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,8BAAc,CAAC,SAAS,EAAE,+BAA+B,CAAC,CAAC;IAC/F,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,mDAAmD,CAAC,CAAC;AACpG,CAAC;AAED,SAAS,8BAA8B;IACnC,MAAM,SAAS,GAAG,IAAI,YAAK,CAAC,8BAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACzD,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,8BAAc,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;IAChF,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;IACpC,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,sBAAsB,CAAC,CAAC;IAChD,IAAI,MAAM,EAAE,CAAC;QACT,MAAM,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE,sBAAsB,CAAC,CAAC;QACnD,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,uBAAuB,CAAC,CAAC;IACzD,CAAC;AACL,CAAC;AAED,SAAS,8BAA8B;IACnC,MAAM,MAAM,GAAW,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IACzD,MAAM,SAAS,GAAG,IAAI,YAAK,CAAC,8BAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACzD,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,8BAAc,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;IAChF,MAAM,cAAc,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;IAC5C,MAAM,CAAC,cAAc,KAAK,IAAI,EAAE,sBAAsB,CAAC,CAAC;IACxD,IAAI,cAAc,EAAE,CAAC;QACjB,MAAM,CAAC,cAAc,CAAC,KAAK,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAC;QAC1D,MAAM,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,sBAAsB,CAAC,CAAC;QAC5D,MAAM,CAAC,cAAc,CAAC,IAAI,KAAK,EAAE,EAAE,qBAAqB,CAAC,CAAC;IAC9D,CAAC;AACL,CAAC;AAED,SAAS,yBAAyB;IAC9B,MAAM,MAAM,GAAW,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACxD,IAAI,CAAC;QACD,IAAI,YAAK,CAAC,8BAAc,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,EAAE,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,YAAY,KAAK,EAAE,oBAAoB,CAAC,CAAC;QACrD,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,mCAAmC,CAAC,CAAC;IAChF,CAAC;AACL,CAAC;AAED,SAAS,WAAW;IAChB,MAAM,MAAM,GAAG,IAAI,YAAK,CAAC,8BAAc,CAAC,kBAAkB,CAAC,CAAC;IAC5D,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,8BAAc,CAAC,kBAAkB,EAAE,kCAAkC,CAAC,CAAC;IAEnG,MAAM,MAAM,GAAG,IAAI,YAAK,CAAC,8BAAc,CAAC,SAAS,CAAC,CAAC;IACnD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,8BAAc,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;IAEjF,MAAM,MAAM,GAAG,IAAI,YAAK,CAAC,8BAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACpD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,8BAAc,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,YAAY;IACjB,MAAM,MAAM,GAAG,IAAI,YAAK,CAAC,8BAAc,CAAC,SAAS,CAAC,CAAC;IACnD,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,kCAAkC,CAAC,CAAC;IAEvE,MAAM,MAAM,GAAW,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IACzD,MAAM,MAAM,GAAG,IAAI,YAAK,CAAC,8BAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtD,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IACzC,MAAM,CAAC,cAAc,KAAK,IAAI,EAAE,2BAA2B,CAAC,CAAC;IAC7D,IAAI,cAAc,EAAE,CAAC;QACjB,MAAM,CAAC,cAAc,CAAC,KAAK,KAAK,CAAC,EAAE,6BAA6B,CAAC,CAAC;QAClE,MAAM,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,8BAA8B,CAAC,CAAC;QACpE,MAAM,CAAC,cAAc,CAAC,IAAI,KAAK,EAAE,EAAE,4BAA4B,CAAC,CAAC;IACrE,CAAC;AACL,CAAC;AAED,SAAS,uBAAuB;IAC5B,MAAM,MAAM,GAAG,IAAI,YAAK,CAAC,8BAAc,CAAC,SAAS,CAAC,CAAC;IACnD,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,KAAK,EAAE,EAAE,sCAAsC,CAAC,CAAC;IAEpF,MAAM,MAAM,GAAG,IAAI,YAAK,CAAC,8BAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtD,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,KAAK,MAAM,EAAE,sBAAsB,CAAC,CAAC;IAExE,MAAM,MAAM,GAAG,IAAI,YAAK,CAAC,8BAAc,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC1D,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,KAAK,UAAU,EAAE,0BAA0B,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,YAAY;IACjB,MAAM,MAAM,GAAG,YAAK,CAAC,aAAa,CAAC;IACnC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,oBAAoB,EAAE,4CAA4C,CAAC,CAAC;IAEjG,MAAM,MAAM,GAAG,IAAI,YAAK,CAAC,8BAAc,CAAC,SAAS,CAAC,CAAC;IACnD,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,WAAW,EAAE,qCAAqC,CAAC,CAAC;IAEjF,MAAM,MAAM,GAAG,IAAI,YAAK,CAAC,8BAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtD,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,YAAY,EAAE,iCAAiC,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,wBAAwB;IAC7B,oBAAoB;IACpB,MAAM,OAAO,GAAG,YAAK,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;IAC/C,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,iCAAiC,CAAC,CAAC;IAE5D,kBAAkB;IAClB,MAAM,OAAO,GAAG,YAAK,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,+BAA+B,CAAC,CAAC;IAE1D,uBAAuB;IACvB,MAAM,OAAO,GAAG,YAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,mBAAmB,CAAC,CAAC;IAC9C,IAAI,OAAO,EAAE,CAAC;QACV,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAC;QACnD,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,sBAAsB,CAAC,CAAC;QACrD,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,OAAO,GAAG,YAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,mBAAmB,CAAC,CAAC;IAC9C,IAAI,OAAO,EAAE,CAAC;QACV,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAC;QACnD,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,sBAAsB,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,OAAO,GAAG,YAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,mBAAmB,CAAC,CAAC;IAC9C,IAAI,OAAO,EAAE,CAAC;QACV,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE,mCAAmC,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,OAAO,GAAG,YAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,mBAAmB,CAAC,CAAC;IAC9C,IAAI,OAAO,EAAE,CAAC;QACV,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACrD,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB;IACvB,sBAAsB;IACtB,MAAM,OAAO,GAAW,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACzD,MAAM,CAAC,YAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,MAAM,EAAE,sBAAsB,CAAC,CAAC;IAEzE,MAAM,OAAO,GAAW,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAC1D,MAAM,CAAC,YAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,MAAM,EAAE,8BAA8B,CAAC,CAAC;IAEjF,MAAM,OAAO,GAAW,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAC1D,MAAM,CAAC,YAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,MAAM,EAAE,8BAA8B,CAAC,CAAC;IAEjF,MAAM,OAAO,GAAW,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAC1D,MAAM,CAAC,YAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,MAAM,EAAE,gCAAgC,CAAC,CAAC;IAEnF,uBAAuB;IACvB,MAAM,OAAO,GAAW,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IAC1D,MAAM,CAAC,YAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,4CAA4C,CAAC,CAAC;IAE3F,mBAAmB;IACnB,MAAM,OAAO,GAAW,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACzD,MAAM,CAAC,YAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,wCAAwC,CAAC,CAAC;AAC3F,CAAC;AAED,SAAS,eAAe;IACpB,kBAAkB;IAClB,MAAM,OAAO,GAAG,YAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,EAAE,sBAAsB,CAAC,CAAC;IACpD,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,sBAAsB,CAAC,CAAC;IACrD,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,oBAAoB,CAAC,CAAC;IAEjD,mBAAmB;IACnB,MAAM,OAAO,GAAG,YAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACnD,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,uBAAuB,CAAC,CAAC;IACtD,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,oBAAoB,CAAC,CAAC;IAEjD,kBAAkB;IAClB,MAAM,OAAO,GAAG,YAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACnD,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,sBAAsB,CAAC,CAAC;IACrD,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE,mCAAmC,CAAC,CAAC;IAEjE,iBAAiB;IACjB,MAAM,OAAO,GAAG,YAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACnD,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,sBAAsB,CAAC,CAAC;IACrD,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAC;IAElD,gBAAgB;IAChB,MAAM,OAAO,GAAG,YAAK,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACnD,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,uBAAuB,CAAC,CAAC;IACtD,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE,mCAAmC,CAAC,CAAC;IAEjE,kFAAkF;IAClF,MAAM,OAAO,GAAG,YAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,+CAA+C,CAAC,CAAC;IAC9E,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE,sCAAsC,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,wBAAwB;IAC7B,qBAAqB;IACrB,MAAM,OAAO,GAAG,YAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,EAAE,EAAE,uBAAuB,CAAC,CAAC;IACtD,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE,wBAAwB,CAAC,CAAC;IAExD,oBAAoB;IACpB,MAAM,OAAO,GAAG,YAAK,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACnD,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,sBAAsB,CAAC,CAAC;IACrD,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,kCAAkC,CAAC,CAAC;IAE/D,sBAAsB;IACtB,MAAM,OAAO,GAAG,YAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE,mCAAmC,CAAC,CAAC;IAEjE,sBAAsB;IACtB,MAAM,OAAO,GAAG,YAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE,mCAAmC,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,qBAAqB;IAC1B,yBAAyB;IACzB,IAAI,CAAC;QACD,YAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACxB,MAAM,CAAC,KAAK,EAAE,mDAAmD,CAAC,CAAC;IACvE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,YAAY,KAAK,EAAE,oBAAoB,CAAC,CAAC;QACrD,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,gDAAgD,CAAC,CAAC;IAC1G,CAAC;IAED,kCAAkC;IAClC,IAAI,CAAC;QACD,YAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,CAAC,KAAK,EAAE,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,YAAY,KAAK,EAAE,oBAAoB,CAAC,CAAC;QACrD,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,8CAA8C,CAAC,CAAC;IACtG,CAAC;IAED,sBAAsB;IACtB,IAAI,CAAC;QACD,YAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACzB,MAAM,CAAC,KAAK,EAAE,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,YAAY,KAAK,EAAE,oBAAoB,CAAC,CAAC;IACzD,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"term.test.js","sourceRoot":"","sources":["term.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import assert = require('assert');
2
2
  import { Tenor, Period } from './term';
3
3
  import { TenorTypeProto } from '../../../fintekkers/models/security/tenor_type_pb';
4
+ import { TenorProto } from '../../../fintekkers/models/security/tenor_pb';
4
5
 
5
6
  test('test Tenor.UNKNOWN_TENOR has correct type', () => {
6
7
  testUnknownTenor();
@@ -34,6 +35,12 @@ test('test Tenor.getTenorDescription() returns correct string', () => {
34
35
  testGetTenorDescription();
35
36
  });
36
37
 
38
+ test('test Tenor toString', () => {
39
+ let tenorProto = new TenorProto().setTenorType(TenorTypeProto.TERM).setTermValue("2Y3M");
40
+ let tenor2 = new Tenor(tenorProto.getTenorType(), tenorProto.getTermValue());
41
+ expect(tenor2.toString()).toBe("TERM: 2Y3M");
42
+ });
43
+
37
44
  test('test Tenor.toString() returns correct representation', () => {
38
45
  testToString();
39
46
  });
@@ -35,6 +35,6 @@ test('test the date time', () => __awaiter(void 0, void 0, void 0, function* ()
35
35
  const pos = new position_1.Position(position);
36
36
  const timestampStr = pos.getFieldDisplay(field1);
37
37
  //Expect timestamp match
38
- expect(timestampStr).toMatch(/^\d{4}\/(?:\d{1,2})(?:\/\d{1,2})?$/);
38
+ expect(timestampStr).toMatch(/^\d{4}\-(?:\d{1,2})(?:\-\d{1,2})?$/);
39
39
  }));
40
40
  //# sourceMappingURL=date.test.js.map
@@ -32,5 +32,5 @@ test('test the date time', async () => {
32
32
  const timestampStr = pos.getFieldDisplay(field1);
33
33
 
34
34
  //Expect timestamp match
35
- expect(timestampStr).toMatch(/^\d{4}\/(?:\d{1,2})(?:\/\d{1,2})?$/);
35
+ expect(timestampStr).toMatch(/^\d{4}\-(?:\d{1,2})(?:\-\d{1,2})?$/);
36
36
  });
@@ -1,3 +1,4 @@
1
+ import { IdentifierProto } from "../../../fintekkers/models/security/identifier/identifier_pb";
1
2
  import { DecimalValueProto } from "../../../fintekkers/models/util/decimal_value_pb";
2
3
  import { LocalDateProto } from "../../../fintekkers/models/util/local_date_pb";
3
4
  import { LocalTimestampProto } from "../../../fintekkers/models/util/local_timestamp_pb";
@@ -6,7 +7,8 @@ import { ZonedDateTime } from "./datetime";
6
7
  import { ProtoEnum } from "./protoEnum";
7
8
  import { UUID } from "./uuid";
8
9
  import { StringValue } from 'google-protobuf/google/protobuf/wrappers_pb';
10
+ import { Identifier } from "../security/identifier";
9
11
  export declare class ProtoSerializationUtil {
10
- static serialize(obj: any): DecimalValueProto | LocalDateProto | LocalTimestampProto | UUIDProto | StringValue;
11
- static deserialize(obj: any): string | number | ZonedDateTime | Date | UUID | ProtoEnum;
12
+ static serialize(obj: any): UUIDProto | LocalDateProto | LocalTimestampProto | DecimalValueProto | StringValue | IdentifierProto;
13
+ static deserialize(obj: any): UUID | Date | ZonedDateTime | Identifier | string | number | ProtoEnum;
12
14
  }
@@ -10,6 +10,7 @@ const datetime_1 = require("./datetime");
10
10
  const protoEnum_1 = require("./protoEnum");
11
11
  const uuid_1 = require("./uuid");
12
12
  const wrappers_pb_1 = require("google-protobuf/google/protobuf/wrappers_pb");
13
+ const identifier_1 = require("../security/identifier");
13
14
  class ProtoSerializationUtil {
14
15
  static serialize(obj) {
15
16
  if (obj instanceof uuid_1.UUID) {
@@ -30,6 +31,9 @@ class ProtoSerializationUtil {
30
31
  if (obj instanceof String) {
31
32
  return new wrappers_pb_1.StringValue().setValue(obj.toString());
32
33
  }
34
+ if (obj instanceof identifier_1.Identifier) {
35
+ return obj.proto;
36
+ }
33
37
  throw new Error(`Could not serialize object of type ${typeof obj}. Value: ${obj}`);
34
38
  }
35
39
  static deserialize(obj) {
@@ -45,7 +49,7 @@ class ProtoSerializationUtil {
45
49
  return new datetime_1.ZonedDateTime(obj);
46
50
  }
47
51
  if (obj instanceof identifier_pb_1.IdentifierProto) {
48
- return obj.getIdentifierType() + ":" + obj.getIdentifierValue();
52
+ return new identifier_1.Identifier(obj);
49
53
  }
50
54
  if (obj instanceof decimal_value_pb_1.DecimalValueProto) {
51
55
  return parseFloat(obj.getArbitraryPrecisionValue());
@@ -1 +1 @@
1
- {"version":3,"file":"serialization.js","sourceRoot":"","sources":["serialization.ts"],"names":[],"mappings":";;;AACA,gGAA+F;AAC/F,uFAAqF;AACrF,iFAA+E;AAC/E,2FAAyF;AACzF,qEAAoE;AAEpE,yCAA2C;AAC3C,2CAAwC;AACxC,iCAA8B;AAC9B,6EAA0E;AAG1E,MAAa,sBAAsB;IACjC,MAAM,CAAC,SAAS,CAAC,GAAQ;QACvB,IAAI,GAAG,YAAY,WAAI,EAAE,CAAC;YACxB,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC;QAC3B,CAAC;QACD,IAAI,GAAG,YAAY,IAAI,EAAE,CAAC;YACxB,OAAO,IAAI,8BAAc,EAAE;iBACxB,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;iBAC1B,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;iBAC5B,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,GAAG,YAAY,wBAAa,EAAE,CAAC;YACjC,OAAO,GAAG,CAAC,OAAO,EAAE,CAAC;QACvB,CAAC;QACD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,IAAI,oCAAiB,EAAE,CAAC,0BAA0B,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD,IAAI,GAAG,YAAY,MAAM,EAAE,CAAC;YAC1B,OAAO,IAAI,yBAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,sCAAsC,OAAO,GAAG,YAAY,GAAG,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,GAAQ;QACzB,IAAI,GAAG,YAAY,mBAAS,EAAE,CAAC;YAC7B,OAAO,WAAI,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,GAAG,YAAY,8BAAc,EAAE,CAAC;YAClC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;YACvE,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,GAAG,YAAY,wCAAmB,EAAE,CAAC;YACvC,OAAO,IAAI,wBAAa,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC;QACD,IAAI,GAAG,YAAY,+BAAe,EAAE,CAAC;YACnC,OAAO,GAAG,CAAC,iBAAiB,EAAE,GAAG,GAAG,GAAG,GAAG,CAAC,kBAAkB,EAAE,CAAC;QAClE,CAAC;QACD,IAAI,GAAG,YAAY,oCAAiB,EAAE,CAAC;YACrC,OAAO,UAAU,CAAC,GAAG,CAAC,0BAA0B,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,GAAG,YAAY,yBAAW,EAAE,CAAC;YAC/B,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;QACxB,CAAC;QACD,IAAI,GAAG,KAAK,IAAI,IAAI,WAAW,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,SAAS,KAAK,WAAW,IAAI,GAAG,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YACzG,OAAO,IAAI,qBAAS,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,wCAAwC,OAAO,GAAG,YAAY,GAAG,EAAE,CAAC,CAAC;IACvF,CAAC;CACF;AAnDD,wDAmDC"}
1
+ {"version":3,"file":"serialization.js","sourceRoot":"","sources":["serialization.ts"],"names":[],"mappings":"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"}
@@ -10,9 +10,10 @@ import { ProtoEnum } from "./protoEnum";
10
10
  import { UUID } from "./uuid";
11
11
  import { StringValue } from 'google-protobuf/google/protobuf/wrappers_pb';
12
12
  import { Any } from 'google-protobuf/google/protobuf/any_pb';
13
+ import { Identifier } from "../security/identifier";
13
14
 
14
15
  export class ProtoSerializationUtil {
15
- static serialize(obj: any) { //}: UUIDProto | LocalDateProto | LocalTimestampProto | DecimalValueProto | StringValue {
16
+ static serialize(obj: any): UUIDProto | LocalDateProto | LocalTimestampProto | DecimalValueProto | StringValue | IdentifierProto { //}: UUIDProto | LocalDateProto | LocalTimestampProto | DecimalValueProto | StringValue {
16
17
  if (obj instanceof UUID) {
17
18
  return obj.toUUIDProto();
18
19
  }
@@ -31,11 +32,14 @@ export class ProtoSerializationUtil {
31
32
  if (obj instanceof String) {
32
33
  return new StringValue().setValue(obj.toString());
33
34
  }
35
+ if (obj instanceof Identifier) {
36
+ return obj.proto as IdentifierProto;
37
+ }
34
38
 
35
39
  throw new Error(`Could not serialize object of type ${typeof obj}. Value: ${obj}`);
36
40
  }
37
41
 
38
- static deserialize(obj: any) { //}: UUID | Date | ZonedDateTime | number | string {
42
+ static deserialize(obj: any): UUID | Date | ZonedDateTime | Identifier | string | number | ProtoEnum { //}: UUID | Date | ZonedDateTime | number | string {
39
43
  if (obj instanceof UUIDProto) {
40
44
  return UUID.fromU8Array(obj.getRawUuid_asU8());
41
45
  }
@@ -48,7 +52,7 @@ export class ProtoSerializationUtil {
48
52
  return new ZonedDateTime(obj);
49
53
  }
50
54
  if (obj instanceof IdentifierProto) {
51
- return obj.getIdentifierType() + ":" + obj.getIdentifierValue();
55
+ return new Identifier(obj);
52
56
  }
53
57
  if (obj instanceof DecimalValueProto) {
54
58
  return parseFloat(obj.getArbitraryPrecisionValue());
@@ -1,4 +1,7 @@
1
1
  import { Any } from 'google-protobuf/google/protobuf/any_pb';
2
- declare function pack(value: any): Any;
3
- declare function unpack(value: Any): any;
2
+ import { ZonedDateTime } from './datetime';
3
+ import { UUID } from './uuid';
4
+ import { Identifier } from '../security/identifier';
5
+ declare function pack(value: Date | ZonedDateTime | UUID | Identifier | string | number): Any;
6
+ declare function unpack(value: Any): Date | ZonedDateTime | UUID | Identifier | string | number;
4
7
  export { pack, unpack };
@@ -9,6 +9,8 @@ const datetime_1 = require("./datetime");
9
9
  const local_timestamp_pb_1 = require("../../../fintekkers/models/util/local_timestamp_pb");
10
10
  const uuid_1 = require("./uuid");
11
11
  const uuid_pb_1 = require("../../../fintekkers/models/util/uuid_pb");
12
+ const identifier_1 = require("../security/identifier");
13
+ const identifier_pb_1 = require("../../../fintekkers/models/security/identifier/identifier_pb");
12
14
  function pack(value) {
13
15
  if (typeof value === 'string') {
14
16
  return packStringIntoAny(value);
@@ -22,9 +24,14 @@ function pack(value) {
22
24
  return packTimestampIntoAny(localDateProto);
23
25
  }
24
26
  else if (value instanceof uuid_1.UUID) {
25
- // const uuid: UUIDProto = ProtoSerializationUtil.serialize(value);
26
27
  return packIDIntoAny(value.toUUIDProto());
27
28
  }
29
+ else if (value instanceof identifier_1.Identifier) {
30
+ return packIdentifierProtoIntoAny(value.proto);
31
+ }
32
+ else if (value && typeof value === 'object' && 'proto' in value && value.proto instanceof identifier_pb_1.IdentifierProto) {
33
+ return packIdentifierProtoIntoAny(value.proto);
34
+ }
28
35
  else {
29
36
  throw new Error("Unrecognized type cannot be packed: " + typeof value);
30
37
  }
@@ -44,12 +51,28 @@ function unpack(value) {
44
51
  else if (typeUrl === 'type.googleapis.com/fintekkers.models.util.UUIDProto') {
45
52
  return unpackIDIntoAny(value);
46
53
  }
54
+ else if (typeUrl === 'type.googleapis.com/fintekkers.models.security.identifier.IdentifierProto') {
55
+ return unpackIdentifierProtoFromAny(value);
56
+ }
47
57
  else {
48
58
  console.log(value);
49
59
  throw new Error("Unrecognized Any type cannot be unpacked: " + typeUrl);
50
60
  }
51
61
  }
52
62
  exports.unpack = unpack;
63
+ function unpackIdentifierProtoFromAny(anyMessage) {
64
+ const typeUrl = anyMessage.getTypeUrl();
65
+ if (typeUrl !== 'type.googleapis.com/fintekkers.models.security.identifier.IdentifierProto') {
66
+ throw new Error('Unexpected type URL for an identifier: ' + typeUrl);
67
+ }
68
+ const identifierProto = identifier_pb_1.IdentifierProto.deserializeBinary(anyMessage.getValue_asU8());
69
+ return serialization_1.ProtoSerializationUtil.deserialize(identifierProto);
70
+ }
71
+ function packIdentifierProtoIntoAny(input) {
72
+ const anyMessage = new any_pb_1.Any();
73
+ anyMessage.pack(input.serializeBinary(), 'fintekkers.models.security.identifier.IdentifierProto');
74
+ return anyMessage;
75
+ }
53
76
  function packIDIntoAny(uuid) {
54
77
  const anyMessage = new any_pb_1.Any();
55
78
  anyMessage.pack(uuid.serializeBinary(), 'fintekkers.models.util.UUIDProto');
@@ -1 +1 @@
1
- {"version":3,"file":"serialization.util.js","sourceRoot":"","sources":["serialization.util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serialization.util.js","sourceRoot":"","sources":["serialization.util.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"serialization.util.test.js","sourceRoot":"","sources":["serialization.util.test.ts"],"names":[],"mappings":";;AAEA,6DAAoD;AACpD,yCAA2C;AAE3C,iCAAkC;AAElC,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE;IACzC,UAAU,EAAE,CAAC;AACf,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;IACvC,QAAQ,EAAE,CAAC;AACb,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAC5C,aAAa,EAAE,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,SAAS,aAAa;IACpB,MAAM,GAAG,GAAG,wBAAa,CAAC,GAAG,EAAE,CAAC;IAEhC,MAAM,SAAS,GAAQ,IAAA,yBAAI,EAAC,GAAG,CAAC,CAAC;IACjC,MAAM,WAAW,GAAkB,IAAA,2BAAM,EAAC,SAAS,CAAC,CAAC;IAErD,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,WAAW,CAAC,WAAW,EAAE,EAAE,wBAAwB,CAAC,CAAC;IACrF,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,WAAW,CAAC,UAAU,EAAE,EAAE,sBAAsB,CAAC,CAAC;IACjF,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,WAAW,CAAC,cAAc,EAAE,EAAE,0BAA0B,CAAC,CAAC;AAC/F,CAAC;AAED,SAAS,QAAQ;IACf,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9B,MAAM,UAAU,GAAQ,IAAA,yBAAI,EAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,YAAY,GAAS,IAAA,2BAAM,EAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,OAAO,EAAE,EAAE,+BAA+B,CAAC,CAAC;AAC5F,CAAC;AAED,SAAS,UAAU;IACjB,MAAM,UAAU,GAAG,OAAO,CAAC;IAE3B,MAAM,YAAY,GAAQ,IAAA,yBAAI,EAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,cAAc,GAAW,IAAA,2BAAM,EAAC,YAAY,CAAC,CAAC;IACpD,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,UAAU,EAAE,iCAAiC,CAAC,CAAC;AAC9E,CAAC"}
1
+ {"version":3,"file":"serialization.util.test.js","sourceRoot":"","sources":["serialization.util.test.ts"],"names":[],"mappings":";;AAEA,6DAAoD;AACpD,yCAA2C;AAE3C,iCAAkC;AAElC,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE;IACzC,UAAU,EAAE,CAAC;AACf,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;IACvC,QAAQ,EAAE,CAAC;AACb,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAC5C,aAAa,EAAE,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,SAAS,aAAa;IACpB,MAAM,GAAG,GAAG,wBAAa,CAAC,GAAG,EAAE,CAAC;IAEhC,MAAM,SAAS,GAAQ,IAAA,yBAAI,EAAC,GAAG,CAAC,CAAC;IACjC,MAAM,WAAW,GAAkB,IAAA,2BAAM,EAAC,SAAS,CAAkB,CAAC;IAEtE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,WAAW,CAAC,WAAW,EAAE,EAAE,wBAAwB,CAAC,CAAC;IACrF,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,WAAW,CAAC,UAAU,EAAE,EAAE,sBAAsB,CAAC,CAAC;IACjF,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,WAAW,CAAC,cAAc,EAAE,EAAE,0BAA0B,CAAC,CAAC;AAC/F,CAAC;AAED,SAAS,QAAQ;IACf,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9B,MAAM,UAAU,GAAQ,IAAA,yBAAI,EAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,YAAY,GAAS,IAAA,2BAAM,EAAC,UAAU,CAAS,CAAC;IACtD,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,OAAO,EAAE,EAAE,+BAA+B,CAAC,CAAC;AAC5F,CAAC;AAED,SAAS,UAAU;IACjB,MAAM,UAAU,GAAG,OAAO,CAAC;IAE3B,MAAM,YAAY,GAAQ,IAAA,yBAAI,EAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,cAAc,GAAW,IAAA,2BAAM,EAAC,YAAY,CAAW,CAAC;IAC9D,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,UAAU,EAAE,iCAAiC,CAAC,CAAC;AAC9E,CAAC"}
@@ -21,7 +21,7 @@ function testTimestamp() {
21
21
  const now = ZonedDateTime.now();
22
22
 
23
23
  const packedNow: Any = pack(now);
24
- const unpackedNow: ZonedDateTime = unpack(packedNow);
24
+ const unpackedNow: ZonedDateTime = unpack(packedNow) as ZonedDateTime;
25
25
 
26
26
  assert.equal(now.getTimezone(), unpackedNow.getTimezone(), "Timezone doesn't match");
27
27
  assert.equal(now.getSeconds(), unpackedNow.getSeconds(), "Seconds do not match");
@@ -33,7 +33,7 @@ function testDate() {
33
33
  testDate.setHours(0, 0, 0, 0);
34
34
 
35
35
  const packedDate: Any = pack(testDate);
36
- const unpackedDate: Date = unpack(packedDate);
36
+ const unpackedDate: Date = unpack(packedDate) as Date;
37
37
  assert.equal(unpackedDate.getTime(), testDate.getTime(), "Date packing/unpacking failed");
38
38
  }
39
39
 
@@ -41,7 +41,7 @@ function testString() {
41
41
  const testString = "Hello";
42
42
 
43
43
  const packedString: Any = pack(testString);
44
- const unpackedString: String = unpack(packedString);
44
+ const unpackedString: String = unpack(packedString) as string;
45
45
  assert.equal(unpackedString, testString, "String packing/unpacking failed");
46
46
  }
47
47
 
@@ -6,8 +6,10 @@ import { ZonedDateTime } from './datetime';
6
6
  import { LocalTimestampProto } from '../../../fintekkers/models/util/local_timestamp_pb';
7
7
  import { UUID } from './uuid';
8
8
  import { UUIDProto } from '../../../fintekkers/models/util/uuid_pb';
9
+ import { Identifier } from '../security/identifier';
10
+ import { IdentifierProto } from '../../../fintekkers/models/security/identifier/identifier_pb';
9
11
 
10
- function pack(value: any) {
12
+ function pack(value: Date | ZonedDateTime | UUID | Identifier | string | number) {
11
13
  if (typeof value === 'string') {
12
14
  return packStringIntoAny(value);
13
15
  } else if (value instanceof Date) {
@@ -17,29 +19,52 @@ function pack(value: any) {
17
19
  const localDateProto: LocalTimestampProto = ProtoSerializationUtil.serialize(value) as LocalTimestampProto;
18
20
  return packTimestampIntoAny(localDateProto);
19
21
  } else if (value instanceof UUID) {
20
- // const uuid: UUIDProto = ProtoSerializationUtil.serialize(value);
21
22
  return packIDIntoAny(value.toUUIDProto());
22
- } else {
23
+ } else if (value instanceof Identifier) {
24
+ return packIdentifierProtoIntoAny(value.proto as IdentifierProto);
25
+ } else if (value && typeof value === 'object' && 'proto' in value && (value as any).proto instanceof IdentifierProto) {
26
+ return packIdentifierProtoIntoAny((value as any).proto as IdentifierProto);
27
+ }
28
+ else {
23
29
  throw new Error("Unrecognized type cannot be packed: " + typeof value);
24
30
  }
25
31
  }
26
32
 
27
- function unpack(value: Any): any {
33
+ function unpack(value: Any): Date | ZonedDateTime | UUID | Identifier | string | number {
28
34
  const typeUrl = value.getTypeUrl();
29
35
  if (typeUrl === 'type.googleapis.com/google.protobuf.StringValue') {
30
- return unpackStringFromAny(value);
36
+ return unpackStringFromAny(value) as string;
31
37
  } else if (typeUrl === 'type.googleapis.com/fintekkers.models.util.LocalDateProto') {
32
- return unpackDateFromAny(value);
38
+ return unpackDateFromAny(value) as Date;
33
39
  } else if (typeUrl === 'type.googleapis.com/fintekkers.models.util.LocalTimestampProto') {
34
40
  return unpackTimestampFromAny(value);
35
41
  } else if (typeUrl === 'type.googleapis.com/fintekkers.models.util.UUIDProto') {
36
- return unpackIDIntoAny(value);
37
- } else {
42
+ return unpackIDIntoAny(value) as UUID;
43
+ } else if (typeUrl === 'type.googleapis.com/fintekkers.models.security.identifier.IdentifierProto') {
44
+ return unpackIdentifierProtoFromAny(value) as Identifier;
45
+ }
46
+ else {
38
47
  console.log(value);
39
48
  throw new Error("Unrecognized Any type cannot be unpacked: " + typeUrl);
40
49
  }
41
50
  }
42
51
 
52
+ function unpackIdentifierProtoFromAny(anyMessage: Any): Identifier {
53
+ const typeUrl = anyMessage.getTypeUrl();
54
+
55
+ if (typeUrl !== 'type.googleapis.com/fintekkers.models.security.identifier.IdentifierProto') {
56
+ throw new Error('Unexpected type URL for an identifier: ' + typeUrl);
57
+ }
58
+ const identifierProto: IdentifierProto = IdentifierProto.deserializeBinary(anyMessage.getValue_asU8());
59
+ return ProtoSerializationUtil.deserialize(identifierProto) as unknown as Identifier;
60
+ }
61
+
62
+ function packIdentifierProtoIntoAny(input: IdentifierProto): Any {
63
+ const anyMessage = new Any();
64
+
65
+ anyMessage.pack(input.serializeBinary(), 'fintekkers.models.security.identifier.IdentifierProto');
66
+ return anyMessage;
67
+ }
43
68
 
44
69
  function packIDIntoAny(uuid: UUIDProto): Any {
45
70
  const anyMessage = new Any();
@@ -48,7 +73,7 @@ function packIDIntoAny(uuid: UUIDProto): Any {
48
73
  return anyMessage;
49
74
  }
50
75
 
51
- function unpackIDIntoAny(anyMessage: Any): UUIDProto {
76
+ function unpackIDIntoAny(anyMessage: Any): UUID {
52
77
  const typeUrl = anyMessage.getTypeUrl();
53
78
 
54
79
  if (typeUrl !== 'type.googleapis.com/fintekkers.models.util.UUIDProto') {
@@ -56,7 +81,7 @@ function unpackIDIntoAny(anyMessage: Any): UUIDProto {
56
81
  }
57
82
 
58
83
  const uuidProto: UUIDProto = UUIDProto.deserializeBinary(anyMessage.getValue_asU8());
59
- return ProtoSerializationUtil.deserialize(uuidProto) as unknown as UUIDProto;
84
+ return ProtoSerializationUtil.deserialize(uuidProto) as unknown as UUID;
60
85
  }
61
86
 
62
87
  function packTimestampIntoAny(inputDate: LocalTimestampProto): Any {
@@ -66,7 +91,7 @@ function packTimestampIntoAny(inputDate: LocalTimestampProto): Any {
66
91
  return anyMessage;
67
92
  }
68
93
 
69
- function unpackTimestampFromAny(anyMessage: Any): LocalTimestampProto {
94
+ function unpackTimestampFromAny(anyMessage: Any): ZonedDateTime {
70
95
  const typeUrl = anyMessage.getTypeUrl();
71
96
 
72
97
  if (typeUrl !== 'type.googleapis.com/fintekkers.models.util.LocalTimestampProto') {
@@ -74,7 +99,7 @@ function unpackTimestampFromAny(anyMessage: Any): LocalTimestampProto {
74
99
  }
75
100
 
76
101
  const dateProto: LocalTimestampProto = LocalTimestampProto.deserializeBinary(anyMessage.getValue_asU8());
77
- return ProtoSerializationUtil.deserialize(dateProto) as unknown as LocalTimestampProto;
102
+ return ProtoSerializationUtil.deserialize(dateProto) as unknown as ZonedDateTime;
78
103
  }
79
104
 
80
105
  function packDateIntoAny(inputDate: LocalDateProto): Any {
@@ -84,7 +109,7 @@ function packDateIntoAny(inputDate: LocalDateProto): Any {
84
109
  return anyMessage;
85
110
  }
86
111
 
87
- function unpackDateFromAny(anyMessage: Any): LocalDateProto {
112
+ function unpackDateFromAny(anyMessage: Any): Date {
88
113
  const typeUrl = anyMessage.getTypeUrl();
89
114
 
90
115
  if (typeUrl !== 'type.googleapis.com/fintekkers.models.util.LocalDateProto') {
@@ -92,7 +117,7 @@ function unpackDateFromAny(anyMessage: Any): LocalDateProto {
92
117
  }
93
118
 
94
119
  const dateProto: LocalDateProto = LocalDateProto.deserializeBinary(anyMessage.getValue_asU8());
95
- return ProtoSerializationUtil.deserialize(dateProto) as unknown as LocalDateProto;
120
+ return ProtoSerializationUtil.deserialize(dateProto) as unknown as Date;
96
121
  }
97
122
 
98
123
  function packStringIntoAny(inputString: string): Any {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@fintekkers/ledger-models",
3
3
  "todo": "Replace the version with build script version number",
4
- "version": "0.1.116",
4
+ "version": "0.1.117",
5
5
  "description": "ledger model protos ",
6
6
  "authors": [
7
7
  "David Doherty",