@fintekkers/ledger-models 0.4.37 → 0.4.39

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 (192) hide show
  1. package/node/fintekkers/models/portfolio/portfolio_pb.d.ts +13 -0
  2. package/node/fintekkers/models/portfolio/portfolio_pb.js +123 -1
  3. package/node/fintekkers/models/position/position_filter_pb.d.ts +13 -0
  4. package/node/fintekkers/models/position/position_filter_pb.js +123 -1
  5. package/node/fintekkers/models/position/position_pb.d.ts +13 -0
  6. package/node/fintekkers/models/position/position_pb.js +123 -1
  7. package/node/fintekkers/models/price/price_pb.d.ts +13 -0
  8. package/node/fintekkers/models/price/price_pb.js +123 -1
  9. package/node/fintekkers/models/security/bond/issuance_pb.d.ts +13 -0
  10. package/node/fintekkers/models/security/bond/issuance_pb.js +123 -1
  11. package/node/fintekkers/models/security/identifier/identifier_pb.d.ts +13 -0
  12. package/node/fintekkers/models/security/identifier/identifier_pb.js +123 -1
  13. package/node/fintekkers/models/security/index_composition_pb.d.ts +13 -0
  14. package/node/fintekkers/models/security/index_composition_pb.js +123 -1
  15. package/node/fintekkers/models/security/security_pb.d.ts +13 -0
  16. package/node/fintekkers/models/security/security_pb.js +123 -1
  17. package/node/fintekkers/models/security/tenor_pb.d.ts +13 -0
  18. package/node/fintekkers/models/security/tenor_pb.js +123 -1
  19. package/node/fintekkers/models/strategy/strategy_allocation_pb.d.ts +13 -0
  20. package/node/fintekkers/models/strategy/strategy_allocation_pb.js +123 -1
  21. package/node/fintekkers/models/strategy/strategy_pb.d.ts +13 -0
  22. package/node/fintekkers/models/strategy/strategy_pb.js +123 -1
  23. package/node/fintekkers/models/transaction/transaction_pb.d.ts +13 -0
  24. package/node/fintekkers/models/transaction/transaction_pb.js +123 -1
  25. package/node/fintekkers/models/util/api/api_key_pb.d.ts +13 -0
  26. package/node/fintekkers/models/util/api/api_key_pb.js +123 -1
  27. package/node/fintekkers/models/util/date_range_pb.d.ts +13 -0
  28. package/node/fintekkers/models/util/date_range_pb.js +123 -1
  29. package/node/fintekkers/models/util/decimal_value_pb.d.ts +2 -0
  30. package/node/fintekkers/models/util/lock/node_partition_pb.d.ts +13 -0
  31. package/node/fintekkers/models/util/lock/node_partition_pb.js +123 -1
  32. package/node/fintekkers/models/util/lock/node_state_pb.d.ts +13 -0
  33. package/node/fintekkers/models/util/lock/node_state_pb.js +123 -1
  34. package/node/fintekkers/models/util/object_type_grpc_pb.js +1 -0
  35. package/node/fintekkers/models/util/object_type_pb.d.ts +63 -0
  36. package/node/fintekkers/models/util/object_type_pb.js +109 -0
  37. package/node/fintekkers/requests/index_composition/create_index_composition_request_pb.d.ts +25 -0
  38. package/node/fintekkers/requests/index_composition/create_index_composition_request_pb.js +244 -2
  39. package/node/fintekkers/requests/index_composition/get_index_composition_request_pb.d.ts +25 -0
  40. package/node/fintekkers/requests/index_composition/get_index_composition_request_pb.js +244 -2
  41. package/node/fintekkers/requests/portfolio/create_portfolio_request_pb.d.ts +13 -0
  42. package/node/fintekkers/requests/portfolio/create_portfolio_request_pb.js +123 -1
  43. package/node/fintekkers/requests/portfolio/create_portfolio_response_pb.d.ts +13 -0
  44. package/node/fintekkers/requests/portfolio/create_portfolio_response_pb.js +123 -1
  45. package/node/fintekkers/requests/portfolio/query_portfolio_request_pb.d.ts +13 -0
  46. package/node/fintekkers/requests/portfolio/query_portfolio_request_pb.js +123 -1
  47. package/node/fintekkers/requests/portfolio/query_portfolio_response_pb.d.ts +13 -0
  48. package/node/fintekkers/requests/portfolio/query_portfolio_response_pb.js +123 -1
  49. package/node/fintekkers/requests/position/query_position_request_pb.d.ts +13 -0
  50. package/node/fintekkers/requests/position/query_position_request_pb.js +123 -1
  51. package/node/fintekkers/requests/position/query_position_response_pb.d.ts +13 -0
  52. package/node/fintekkers/requests/position/query_position_response_pb.js +123 -1
  53. package/node/fintekkers/requests/price/create_price_request_pb.d.ts +13 -0
  54. package/node/fintekkers/requests/price/create_price_request_pb.js +123 -1
  55. package/node/fintekkers/requests/price/create_price_response_pb.d.ts +13 -0
  56. package/node/fintekkers/requests/price/create_price_response_pb.js +123 -1
  57. package/node/fintekkers/requests/price/query_price_request_pb.d.ts +13 -0
  58. package/node/fintekkers/requests/price/query_price_request_pb.js +123 -1
  59. package/node/fintekkers/requests/price/query_price_response_pb.d.ts +13 -0
  60. package/node/fintekkers/requests/price/query_price_response_pb.js +123 -1
  61. package/node/fintekkers/requests/security/create_security_request_pb.d.ts +13 -0
  62. package/node/fintekkers/requests/security/create_security_request_pb.js +123 -1
  63. package/node/fintekkers/requests/security/create_security_response_pb.d.ts +13 -0
  64. package/node/fintekkers/requests/security/create_security_response_pb.js +123 -1
  65. package/node/fintekkers/requests/security/get_field_values_request_pb.d.ts +13 -0
  66. package/node/fintekkers/requests/security/get_field_values_request_pb.js +123 -1
  67. package/node/fintekkers/requests/security/get_field_values_response_pb.d.ts +13 -0
  68. package/node/fintekkers/requests/security/get_field_values_response_pb.js +123 -1
  69. package/node/fintekkers/requests/security/get_fields_response_pb.d.ts +13 -0
  70. package/node/fintekkers/requests/security/get_fields_response_pb.js +123 -1
  71. package/node/fintekkers/requests/security/query_security_request_pb.d.ts +13 -0
  72. package/node/fintekkers/requests/security/query_security_request_pb.js +123 -1
  73. package/node/fintekkers/requests/security/query_security_response_pb.d.ts +13 -0
  74. package/node/fintekkers/requests/security/query_security_response_pb.js +123 -1
  75. package/node/fintekkers/requests/transaction/create_transaction_request_pb.d.ts +13 -0
  76. package/node/fintekkers/requests/transaction/create_transaction_request_pb.js +123 -1
  77. package/node/fintekkers/requests/transaction/create_transaction_response_pb.d.ts +13 -0
  78. package/node/fintekkers/requests/transaction/create_transaction_response_pb.js +123 -1
  79. package/node/fintekkers/requests/transaction/query_transaction_request_pb.d.ts +13 -0
  80. package/node/fintekkers/requests/transaction/query_transaction_request_pb.js +123 -1
  81. package/node/fintekkers/requests/transaction/query_transaction_response_pb.d.ts +13 -0
  82. package/node/fintekkers/requests/transaction/query_transaction_response_pb.js +123 -1
  83. package/node/fintekkers/requests/util/delete_request_pb.d.ts +25 -0
  84. package/node/fintekkers/requests/util/delete_request_pb.js +244 -2
  85. package/node/fintekkers/requests/util/lock/lock_request_pb.d.ts +13 -0
  86. package/node/fintekkers/requests/util/lock/lock_request_pb.js +123 -1
  87. package/node/fintekkers/requests/util/lock/lock_response_pb.d.ts +13 -0
  88. package/node/fintekkers/requests/util/lock/lock_response_pb.js +123 -1
  89. package/node/fintekkers/requests/valuation/curve_request_pb.d.ts +13 -0
  90. package/node/fintekkers/requests/valuation/curve_request_pb.js +123 -1
  91. package/node/fintekkers/requests/valuation/curve_response_pb.d.ts +13 -0
  92. package/node/fintekkers/requests/valuation/curve_response_pb.js +123 -1
  93. package/node/fintekkers/requests/valuation/valuation_request_pb.d.ts +13 -0
  94. package/node/fintekkers/requests/valuation/valuation_request_pb.js +123 -1
  95. package/node/fintekkers/requests/valuation/valuation_response_pb.d.ts +13 -0
  96. package/node/fintekkers/requests/valuation/valuation_response_pb.js +123 -1
  97. package/node/wrappers/models/position/position.d.ts +1 -1
  98. package/node/wrappers/models/position/position.js.map +1 -1
  99. package/node/wrappers/models/position/position.test.js +2 -2
  100. package/node/wrappers/models/position/position.test.js.map +1 -1
  101. package/node/wrappers/models/position/position.test.ts +2 -2
  102. package/node/wrappers/models/position/position.ts +2 -2
  103. package/node/wrappers/models/position/position_matcher.js +1 -0
  104. package/node/wrappers/models/position/position_matcher.js.map +1 -0
  105. package/node/wrappers/models/position/position_matcher.test.js +1 -0
  106. package/node/wrappers/models/position/position_matcher.test.js.map +1 -0
  107. package/node/wrappers/models/position/positionfilter.js +3 -2
  108. package/node/wrappers/models/position/positionfilter.js.map +1 -1
  109. package/node/wrappers/models/position/positionfilter.ts +3 -2
  110. package/node/wrappers/models/price/Price.js +20 -12
  111. package/node/wrappers/models/price/Price.js.map +1 -1
  112. package/node/wrappers/models/price/Price.ts +19 -10
  113. package/node/wrappers/models/price/price_rules.d.ts +2 -2
  114. package/node/wrappers/models/price/price_rules.js +6 -4
  115. package/node/wrappers/models/price/price_rules.js.map +1 -1
  116. package/node/wrappers/models/price/price_rules.ts +5 -3
  117. package/node/wrappers/models/security/BondSecurity.d.ts +1 -1
  118. package/node/wrappers/models/security/BondSecurity.js +5 -5
  119. package/node/wrappers/models/security/BondSecurity.js.map +1 -1
  120. package/node/wrappers/models/security/BondSecurity.ts +5 -4
  121. package/node/wrappers/models/security/FloatingRateNote.js +2 -2
  122. package/node/wrappers/models/security/FloatingRateNote.js.map +1 -1
  123. package/node/wrappers/models/security/FloatingRateNote.ts +2 -1
  124. package/node/wrappers/models/security/Issuance.js +3 -6
  125. package/node/wrappers/models/security/Issuance.js.map +1 -1
  126. package/node/wrappers/models/security/Issuance.ts +3 -2
  127. package/node/wrappers/models/security/MortgageBackedSecurity.js +7 -7
  128. package/node/wrappers/models/security/MortgageBackedSecurity.js.map +1 -1
  129. package/node/wrappers/models/security/MortgageBackedSecurity.ts +7 -6
  130. package/node/wrappers/models/security/TIPSBond.js +2 -2
  131. package/node/wrappers/models/security/TIPSBond.js.map +1 -1
  132. package/node/wrappers/models/security/TIPSBond.ts +2 -1
  133. package/node/wrappers/models/security/security_rules.js +10 -12
  134. package/node/wrappers/models/security/security_rules.js.map +1 -1
  135. package/node/wrappers/models/security/security_rules.ts +9 -9
  136. package/node/wrappers/models/transaction/transaction.js +20 -14
  137. package/node/wrappers/models/transaction/transaction.js.map +1 -1
  138. package/node/wrappers/models/transaction/transaction.ts +20 -11
  139. package/node/wrappers/models/transaction/transaction_constructor.test.js +29 -0
  140. package/node/wrappers/models/transaction/transaction_constructor.test.js.map +1 -1
  141. package/node/wrappers/models/utils/decimal.d.ts +96 -0
  142. package/node/wrappers/models/utils/decimal.js +328 -0
  143. package/node/wrappers/models/utils/decimal.js.map +1 -0
  144. package/node/wrappers/models/utils/decimal.legacy.test.d.ts +1 -0
  145. package/node/wrappers/models/utils/decimal.legacy.test.js +174 -0
  146. package/node/wrappers/models/utils/decimal.legacy.test.js.map +1 -0
  147. package/node/wrappers/models/utils/decimal.legacy.test.ts +158 -0
  148. package/node/wrappers/models/utils/decimal.test.d.ts +1 -0
  149. package/node/wrappers/models/utils/decimal.test.js +258 -0
  150. package/node/wrappers/models/utils/decimal.test.js.map +1 -0
  151. package/node/wrappers/models/utils/decimal.test.ts +272 -0
  152. package/node/wrappers/models/utils/decimal.ts +335 -0
  153. package/node/wrappers/models/utils/decimal.typings.test.d.ts +1 -0
  154. package/node/wrappers/models/utils/decimal.typings.test.js +39 -0
  155. package/node/wrappers/models/utils/decimal.typings.test.js.map +1 -0
  156. package/node/wrappers/models/utils/decimal.typings.test.ts +16 -0
  157. package/node/wrappers/models/utils/serialization.d.ts +2 -1
  158. package/node/wrappers/models/utils/serialization.js +12 -2
  159. package/node/wrappers/models/utils/serialization.js.map +1 -1
  160. package/node/wrappers/models/utils/serialization.ts +14 -3
  161. package/node/wrappers/requests/position/QueryPositionRequest.js +3 -2
  162. package/node/wrappers/requests/position/QueryPositionRequest.js.map +1 -1
  163. package/node/wrappers/requests/position/QueryPositionRequest.ts +3 -2
  164. package/node/wrappers/services/portfolio-service/PortfolioService.js +5 -6
  165. package/node/wrappers/services/portfolio-service/PortfolioService.js.map +1 -1
  166. package/node/wrappers/services/portfolio-service/PortfolioService.ts +5 -6
  167. package/node/wrappers/services/price-service/PriceService.js +5 -6
  168. package/node/wrappers/services/price-service/PriceService.js.map +1 -1
  169. package/node/wrappers/services/price-service/PriceService.ts +5 -6
  170. package/node/wrappers/services/security-service/SecurityService.js +5 -6
  171. package/node/wrappers/services/security-service/SecurityService.js.map +1 -1
  172. package/node/wrappers/services/security-service/SecurityService.ts +5 -6
  173. package/node/wrappers/services/security-service/security.maturityLadder.test.js +1 -1
  174. package/node/wrappers/services/security-service/security.maturityLadder.test.js.map +1 -1
  175. package/node/wrappers/services/security-service/security.maturityLadder.test.ts +3 -2
  176. package/node/wrappers/services/transaction-service/TransactionService.js +5 -6
  177. package/node/wrappers/services/transaction-service/TransactionService.js.map +1 -1
  178. package/node/wrappers/services/transaction-service/TransactionService.ts +5 -6
  179. package/node/wrappers/util/link-resolver.js +5 -6
  180. package/node/wrappers/util/link-resolver.js.map +1 -1
  181. package/node/wrappers/util/link-resolver.ts +5 -6
  182. package/node/wrappers/util/object-type-legacy.json +21 -0
  183. package/node/wrappers/util/object-types.d.ts +62 -0
  184. package/node/wrappers/util/object-types.js +193 -0
  185. package/node/wrappers/util/object-types.js.map +1 -0
  186. package/node/wrappers/util/object-types.test.d.ts +1 -0
  187. package/node/wrappers/util/object-types.test.js +311 -0
  188. package/node/wrappers/util/object-types.test.js.map +1 -0
  189. package/node/wrappers/util/object-types.test.ts +307 -0
  190. package/node/wrappers/util/object-types.ts +207 -0
  191. package/package.json +1 -1
  192. package/tsconfig.json +1 -0
@@ -12,6 +12,9 @@ const protoEnum_1 = require("./protoEnum");
12
12
  const uuid_1 = require("./uuid");
13
13
  const wrappers_pb_1 = require("google-protobuf/google/protobuf/wrappers_pb");
14
14
  const identifier_1 = require("../security/identifier");
15
+ const decimal_js_1 = require("decimal.js");
16
+ const errors_1 = require("../errors");
17
+ const decimal_1 = require("./decimal");
15
18
  class ProtoSerializationUtil {
16
19
  static serialize(obj) {
17
20
  if (obj instanceof uuid_1.UUID) {
@@ -26,8 +29,15 @@ class ProtoSerializationUtil {
26
29
  if (obj instanceof datetime_1.ZonedDateTime) {
27
30
  return obj.toProto();
28
31
  }
32
+ if (obj instanceof decimal_js_1.Decimal) {
33
+ return (0, decimal_1.encodeDecimal)((0, decimal_1.fromDecimalJs)(obj));
34
+ }
29
35
  if (typeof obj === "number") {
30
- return new decimal_value_pb_1.DecimalValueProto().setArbitraryPrecisionValue(obj.toString());
36
+ // Lossless (LM-306): only a safe integer is exact as a JS number.
37
+ if (!Number.isSafeInteger(obj)) {
38
+ throw new errors_1.ModelValidationError([(0, errors_1.violation)('', undefined, `decimal ${obj} is not a safe integer: pass a Decimal for an exact value`)]);
39
+ }
40
+ return (0, decimal_1.encodeDecimal)({ unscaled: BigInt(obj), scale: 0 });
31
41
  }
32
42
  if (obj instanceof String) {
33
43
  return new wrappers_pb_1.StringValue().setValue(obj.toString());
@@ -53,7 +63,7 @@ class ProtoSerializationUtil {
53
63
  return new identifier_1.Identifier(obj);
54
64
  }
55
65
  if (obj instanceof decimal_value_pb_1.DecimalValueProto) {
56
- return parseFloat(obj.getArbitraryPrecisionValue());
66
+ return (0, decimal_1.toDecimalJs)((0, decimal_1.decodeDecimal)(obj));
57
67
  }
58
68
  if (obj instanceof wrappers_pb_1.StringValue) {
59
69
  return obj.toString();
@@ -1 +1 @@
1
- {"version":3,"file":"serialization.js","sourceRoot":"","sources":["serialization.ts"],"names":[],"mappings":";;;AAAA,gGAA+F;AAC/F,uFAAqF;AACrF,iFAA+E;AAC/E,2FAAyF;AACzF,qEAAoE;AACpE,uGAAqG;AACrG,yCAA2C;AAC3C,2CAAwC;AACxC,iCAA8B;AAC9B,6EAA0E;AAC1E,uDAAoD;AAEpD,MAAa,sBAAsB;IACjC,MAAM,CAAC,SAAS,CAAC,GAAQ;QACvB,IAAI,GAAG,YAAY,WAAI,EAAE;YACvB,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC;SAC1B;QACD,IAAI,GAAG,YAAY,IAAI,EAAE;YACvB,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;SAC1B;QACD,IAAI,GAAG,YAAY,wBAAa,EAAE;YAChC,OAAO,GAAG,CAAC,OAAO,EAAE,CAAC;SACtB;QACD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,OAAO,IAAI,oCAAiB,EAAE,CAAC,0BAA0B,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC3E;QACD,IAAI,GAAG,YAAY,MAAM,EAAE;YACzB,OAAO,IAAI,yBAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;SACnD;QACD,IAAI,GAAG,YAAY,uBAAU,EAAE;YAC7B,OAAO,GAAG,CAAC,KAAwB,CAAC;SACrC;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;YAC5B,OAAO,WAAI,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC;SAChD;QACD,IAAI,GAAG,YAAY,8BAAc,EAAE;YACjC,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;SACb;QACD,IAAI,GAAG,YAAY,wCAAmB,EAAE;YACtC,OAAO,IAAI,wBAAa,CAAC,GAAG,CAAC,CAAC;SAC/B;QACD,IAAI,GAAG,YAAY,+BAAe,EAAE;YAClC,OAAO,IAAI,uBAAU,CAAC,GAAG,CAAC,CAAC;SAC5B;QACD,IAAI,GAAG,YAAY,oCAAiB,EAAE;YACpC,OAAO,UAAU,CAAC,GAAG,CAAC,0BAA0B,EAAE,CAAC,CAAC;SACrD;QACD,IAAI,GAAG,YAAY,yBAAW,EAAE;YAC9B,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;SACvB;QACD,IAAI,GAAG,KAAK,IAAI,IAAI,WAAW,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,SAAS,KAAK,WAAW,IAAI,GAAG,CAAC,SAAS,KAAK,IAAI,EAAE;YACxG,OAAO,IAAI,qBAAS,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;SACtD;QACD,IAAI,GAAG,YAAY,gDAAuB,EAAE;YAC1C,OAAO,GAAG,CAAC;SACZ;QAED,MAAM,IAAI,KAAK,CAAC,wCAAwC,OAAO,GAAG,YAAY,GAAG,EAAE,CAAC,CAAC;IACvF,CAAC;CACF;AAzDD,wDAyDC"}
1
+ {"version":3,"file":"serialization.js","sourceRoot":"","sources":["serialization.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,9 @@ import { ProtoEnum } from "./protoEnum";
9
9
  import { UUID } from "./uuid";
10
10
  import { StringValue } from 'google-protobuf/google/protobuf/wrappers_pb';
11
11
  import { Identifier } from "../security/identifier";
12
+ import { Decimal } from "decimal.js";
13
+ import { ModelValidationError, violation } from "../errors";
14
+ import { decodeDecimal, encodeDecimal, fromDecimalJs, toDecimalJs } from "./decimal";
12
15
 
13
16
  export class ProtoSerializationUtil {
14
17
  static serialize(obj: any): UUIDProto | LocalDateProto | LocalTimestampProto | DecimalValueProto | StringValue | IdentifierProto { //}: UUIDProto | LocalDateProto | LocalTimestampProto | DecimalValueProto | StringValue {
@@ -24,8 +27,16 @@ export class ProtoSerializationUtil {
24
27
  if (obj instanceof ZonedDateTime) {
25
28
  return obj.toProto();
26
29
  }
30
+ if (obj instanceof Decimal) {
31
+ return encodeDecimal(fromDecimalJs(obj));
32
+ }
27
33
  if (typeof obj === "number") {
28
- return new DecimalValueProto().setArbitraryPrecisionValue(obj.toString());
34
+ // Lossless (LM-306): only a safe integer is exact as a JS number.
35
+ if (!Number.isSafeInteger(obj)) {
36
+ throw new ModelValidationError([violation('', undefined,
37
+ `decimal ${obj} is not a safe integer: pass a Decimal for an exact value`)]);
38
+ }
39
+ return encodeDecimal({ unscaled: BigInt(obj), scale: 0 });
29
40
  }
30
41
  if (obj instanceof String) {
31
42
  return new StringValue().setValue(obj.toString());
@@ -37,7 +48,7 @@ export class ProtoSerializationUtil {
37
48
  throw new Error(`Could not serialize object of type ${typeof obj}. Value: ${obj}`);
38
49
  }
39
50
 
40
- static deserialize(obj: any): UUID | Date | ZonedDateTime | Identifier | string | number | ProtoEnum | StrategyAllocationProto { //}: UUID | Date | ZonedDateTime | number | string {
51
+ static deserialize(obj: any): UUID | Date | ZonedDateTime | Identifier | string | Decimal | ProtoEnum | StrategyAllocationProto { //}: UUID | Date | ZonedDateTime | number | string {
41
52
  if (obj instanceof UUIDProto) {
42
53
  return UUID.fromU8Array(obj.getRawUuid_asU8());
43
54
  }
@@ -53,7 +64,7 @@ export class ProtoSerializationUtil {
53
64
  return new Identifier(obj);
54
65
  }
55
66
  if (obj instanceof DecimalValueProto) {
56
- return parseFloat(obj.getArbitraryPrecisionValue());
67
+ return toDecimalJs(decodeDecimal(obj));
57
68
  }
58
69
  if (obj instanceof StringValue) {
59
70
  return obj.toString();
@@ -7,6 +7,8 @@ const positionfilter_1 = require("../../models/position/positionfilter");
7
7
  const operation_pb_1 = require("../../../fintekkers/requests/util/operation_pb");
8
8
  //Requests
9
9
  const query_position_request_pb_1 = require("../../../fintekkers/requests/position/query_position_request_pb");
10
+ const object_type_pb_1 = require("../../../fintekkers/models/util/object_type_pb");
11
+ const object_types_1 = require("../../util/object-types");
10
12
  class QueryPositionRequest {
11
13
  static fromAsOf(fields, measures, asOf) {
12
14
  return new QueryPositionRequest(new positionfilter_1.PositionFilter(), position_pb_1.PositionTypeProto.TRANSACTION, position_pb_1.PositionViewProto.DEFAULT_VIEW, fields, measures, asOf);
@@ -23,9 +25,8 @@ class QueryPositionRequest {
23
25
  this.asOf = asOf;
24
26
  }
25
27
  toProto() {
26
- const proto = new query_position_request_pb_1.QueryPositionRequestProto()
28
+ const proto = (0, object_types_1.stamp)(new query_position_request_pb_1.QueryPositionRequestProto(), object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_POSITION_REQUEST, '', '1.0.0')
27
29
  .setAsOf(this.asOf.toProto())
28
- .setVersion("1.0.0")
29
30
  .setPositionType(this.positionType)
30
31
  .setPositionView(this.positionView)
31
32
  .setFieldsList(this.fields)
@@ -1 +1 @@
1
- {"version":3,"file":"QueryPositionRequest.js","sourceRoot":"","sources":["QueryPositionRequest.ts"],"names":[],"mappings":";;;AAEA,iFAAuG;AAEvG,0DAA4D;AAC5D,yEAAsE;AACtE,iFAA2F;AAE3F,UAAU;AACV,+GAA4G;AAE5G,MAAa,oBAAoB;IAQ7B,MAAM,CAAC,QAAQ,CAAC,MAAyB,EAAE,QAA6B,EAAE,IAAmB;QACzF,OAAO,IAAI,oBAAoB,CAC3B,IAAI,+BAAc,EAAE,EACpB,+BAAiB,CAAC,WAAW,EAC7B,+BAAiB,CAAC,YAAY,EAC9B,MAAM,EACN,QAAQ,EACR,IAAI,CAAC,CAAC;IACd,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,MAAyB,EAAE,QAA6B;QAChE,OAAO,oBAAoB,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,wBAAa,CAAC,GAAG,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,YAAY,MAAsB,EAAE,YAA+B,EAAE,YAA+B,EAChG,MAAyB,EAAE,QAA6B,EAAE,IAAmB;QAC7E,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAEM,OAAO;QACV,MAAM,KAAK,GAAG,IAAI,qDAAyB,EAAE;aACxC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;aAC5B,UAAU,CAAC,OAAO,CAAC;aACnB,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC;aAClC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC;aAClC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;aAC1B,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC9B,gBAAgB,CAAC,wCAAyB,CAAC,MAAM,CAAC,CAAC;QAExD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,MAAM,GAAG,CAAC;YAClD,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;QAEhD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,SAAS;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;CACJ;AApDD,oDAoDC"}
1
+ {"version":3,"file":"QueryPositionRequest.js","sourceRoot":"","sources":["QueryPositionRequest.ts"],"names":[],"mappings":";;;AAEA,iFAAuG;AAEvG,0DAA4D;AAC5D,yEAAsE;AACtE,iFAA2F;AAE3F,UAAU;AACV,+GAA4G;AAC5G,mFAAiF;AACjF,0DAAgD;AAEhD,MAAa,oBAAoB;IAQ7B,MAAM,CAAC,QAAQ,CAAC,MAAyB,EAAE,QAA6B,EAAE,IAAmB;QACzF,OAAO,IAAI,oBAAoB,CAC3B,IAAI,+BAAc,EAAE,EACpB,+BAAiB,CAAC,WAAW,EAC7B,+BAAiB,CAAC,YAAY,EAC9B,MAAM,EACN,QAAQ,EACR,IAAI,CAAC,CAAC;IACd,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,MAAyB,EAAE,QAA6B;QAChE,OAAO,oBAAoB,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,wBAAa,CAAC,GAAG,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,YAAY,MAAsB,EAAE,YAA+B,EAAE,YAA+B,EAChG,MAAyB,EAAE,QAA6B,EAAE,IAAmB;QAC7E,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAEM,OAAO;QACV,MAAM,KAAK,GAAG,IAAA,oBAAK,EAAC,IAAI,qDAAyB,EAAE,EAAE,gCAAe,CAAC,kCAAkC,EAAE,EAAE,EAAE,OAAO,CAAC;aAChH,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;aAC5B,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC;aAClC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC;aAClC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;aAC1B,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC9B,gBAAgB,CAAC,wCAAyB,CAAC,MAAM,CAAC,CAAC;QAExD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,MAAM,GAAG,CAAC;YAClD,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;QAEhD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,SAAS;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;CACJ;AAnDD,oDAmDC"}
@@ -8,6 +8,8 @@ import { RequestOperationTypeProto } from "../../../fintekkers/requests/util/ope
8
8
 
9
9
  //Requests
10
10
  import { QueryPositionRequestProto } from "../../../fintekkers/requests/position/query_position_request_pb";
11
+ import { ObjectTypeProto } from '../../../fintekkers/models/util/object_type_pb';
12
+ import { stamp } from '../../util/object-types';
11
13
 
12
14
  export class QueryPositionRequest {
13
15
  private filter: PositionFilter;
@@ -43,9 +45,8 @@ export class QueryPositionRequest {
43
45
  }
44
46
 
45
47
  public toProto(): QueryPositionRequestProto {
46
- const proto = new QueryPositionRequestProto()
48
+ const proto = stamp(new QueryPositionRequestProto(), ObjectTypeProto.OBJECT_TYPE_QUERY_POSITION_REQUEST, '', '1.0.0')
47
49
  .setAsOf(this.asOf.toProto())
48
- .setVersion("1.0.0")
49
50
  .setPositionType(this.positionType)
50
51
  .setPositionView(this.positionView)
51
52
  .setFieldsList(this.fields)
@@ -48,6 +48,8 @@ const portfolio_1 = __importDefault(require("../../models/portfolio/portfolio"))
48
48
  const uuid_1 = require("../../models/utils/uuid");
49
49
  const datetime_1 = require("../../models/utils/datetime");
50
50
  const LinkCacheModule = __importStar(require("../../util/link-cache"));
51
+ const object_type_pb_1 = require("../../../fintekkers/models/util/object_type_pb");
52
+ const object_types_1 = require("../../util/object-types");
51
53
  class PortfolioService {
52
54
  /** Read on every access, so a changed environment is picked up. */
53
55
  static get url() {
@@ -65,8 +67,7 @@ class PortfolioService {
65
67
  validateCreatePortfolio(portfolio) {
66
68
  return __awaiter(this, void 0, void 0, function* () {
67
69
  const createRequest = new create_portfolio_request_pb_1.CreatePortfolioRequestProto();
68
- createRequest.setObjectClass('PortfolioRequest');
69
- createRequest.setVersion('0.0.1');
70
+ (0, object_types_1.stamp)(createRequest, object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_PORTFOLIO_REQUEST, 'PortfolioRequest', '0.0.1');
70
71
  createRequest.setCreatePortfolioInput(portfolio);
71
72
  const validateCreateOrUpdateAsync = (0, util_1.promisify)(this.client.validateCreateOrUpdate.bind(this.client));
72
73
  const response = yield validateCreateOrUpdateAsync(createRequest);
@@ -76,8 +77,7 @@ class PortfolioService {
76
77
  createPortfolio(portfolio) {
77
78
  return __awaiter(this, void 0, void 0, function* () {
78
79
  const createRequest = new create_portfolio_request_pb_1.CreatePortfolioRequestProto();
79
- createRequest.setObjectClass('PortfolioRequest');
80
- createRequest.setVersion('0.0.1');
80
+ (0, object_types_1.stamp)(createRequest, object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_PORTFOLIO_REQUEST, 'PortfolioRequest', '0.0.1');
81
81
  createRequest.setCreatePortfolioInput(portfolio);
82
82
  const createPortfolioAsync = (0, util_1.promisify)(this.client.createOrUpdate.bind(this.client));
83
83
  const response = yield createPortfolioAsync(createRequest);
@@ -96,8 +96,7 @@ class PortfolioService {
96
96
  searchPortfolio(asOf, positionFilter) {
97
97
  return __awaiter(this, void 0, void 0, function* () {
98
98
  const searchRequest = new query_portfolio_request_pb_1.QueryPortfolioRequestProto();
99
- searchRequest.setObjectClass('PortfolioRequest');
100
- searchRequest.setVersion('0.0.1');
99
+ (0, object_types_1.stamp)(searchRequest, object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_PORTFOLIO_REQUEST, 'PortfolioRequest', '0.0.1');
101
100
  searchRequest.setAsOf(asOf);
102
101
  searchRequest.setSearchPortfolioInput(positionFilter.toProto());
103
102
  const tmpClient = this.client;
@@ -1 +1 @@
1
- {"version":3,"file":"PortfolioService.js","sourceRoot":"","sources":["PortfolioService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PortfolioService.js","sourceRoot":"","sources":["PortfolioService.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,8 @@ import Portfolio from '../../models/portfolio/portfolio';
20
20
  import { UUID } from '../../models/utils/uuid';
21
21
  import { ZonedDateTime } from '../../models/utils/datetime';
22
22
  import * as LinkCacheModule from '../../util/link-cache';
23
+ import { ObjectTypeProto } from '../../../fintekkers/models/util/object_type_pb';
24
+ import { stamp } from '../../util/object-types';
23
25
 
24
26
  class PortfolioService {
25
27
  private client: PortfolioClient;
@@ -40,8 +42,7 @@ class PortfolioService {
40
42
 
41
43
  async validateCreatePortfolio(portfolio: PortfolioProto): Promise<SummaryProto> {
42
44
  const createRequest = new CreatePortfolioRequestProto();
43
- createRequest.setObjectClass('PortfolioRequest');
44
- createRequest.setVersion('0.0.1');
45
+ stamp(createRequest, ObjectTypeProto.OBJECT_TYPE_CREATE_PORTFOLIO_REQUEST, 'PortfolioRequest', '0.0.1');
45
46
  createRequest.setCreatePortfolioInput(portfolio);
46
47
 
47
48
  const validateCreateOrUpdateAsync = promisify(this.client.validateCreateOrUpdate.bind(this.client));
@@ -51,8 +52,7 @@ class PortfolioService {
51
52
 
52
53
  async createPortfolio(portfolio: PortfolioProto): Promise<CreatePortfolioResponseProto> {
53
54
  const createRequest = new CreatePortfolioRequestProto();
54
- createRequest.setObjectClass('PortfolioRequest');
55
- createRequest.setVersion('0.0.1');
55
+ stamp(createRequest, ObjectTypeProto.OBJECT_TYPE_CREATE_PORTFOLIO_REQUEST, 'PortfolioRequest', '0.0.1');
56
56
  createRequest.setCreatePortfolioInput(portfolio);
57
57
 
58
58
  const createPortfolioAsync = promisify(this.client.createOrUpdate.bind(this.client));
@@ -72,8 +72,7 @@ class PortfolioService {
72
72
  async searchPortfolio(asOf: LocalTimestampProto,
73
73
  positionFilter: PositionFilter): Promise<Portfolio[]> {
74
74
  const searchRequest = new QueryPortfolioRequestProto();
75
- searchRequest.setObjectClass('PortfolioRequest');
76
- searchRequest.setVersion('0.0.1');
75
+ stamp(searchRequest, ObjectTypeProto.OBJECT_TYPE_QUERY_PORTFOLIO_REQUEST, 'PortfolioRequest', '0.0.1');
77
76
  searchRequest.setAsOf(asOf);
78
77
 
79
78
  searchRequest.setSearchPortfolioInput(positionFilter.toProto());
@@ -49,6 +49,8 @@ const requestcontext_1 = __importDefault(require("../../models/utils/requestcont
49
49
  const serviceaddress_1 = require("../../util/serviceaddress");
50
50
  const link_resolver_1 = __importDefault(require("../../util/link-resolver"));
51
51
  const LinkCacheModule = __importStar(require("../../util/link-cache"));
52
+ const object_type_pb_1 = require("../../../fintekkers/models/util/object_type_pb");
53
+ const object_types_1 = require("../../util/object-types");
52
54
  class PriceService {
53
55
  constructor(apiKey) {
54
56
  if (apiKey) {
@@ -66,8 +68,7 @@ class PriceService {
66
68
  return __awaiter(this, void 0, void 0, function* () {
67
69
  const priceProto = price instanceof Price_1.default ? price.proto : price;
68
70
  const createRequest = new create_price_request_pb_1.CreatePriceRequestProto();
69
- createRequest.setObjectClass('PriceRequest');
70
- createRequest.setVersion('0.0.1');
71
+ (0, object_types_1.stamp)(createRequest, object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_PRICE_REQUEST, 'PriceRequest', '0.0.1');
71
72
  createRequest.setCreatePriceInput(priceProto);
72
73
  const validateAsync = (0, util_1.promisify)(this.client.validateCreateOrUpdate.bind(this.client));
73
74
  const response = yield validateAsync(createRequest);
@@ -78,8 +79,7 @@ class PriceService {
78
79
  return __awaiter(this, void 0, void 0, function* () {
79
80
  const priceProto = price instanceof Price_1.default ? price.proto : price;
80
81
  const createRequest = new create_price_request_pb_1.CreatePriceRequestProto();
81
- createRequest.setObjectClass('PriceRequest');
82
- createRequest.setVersion('0.0.1');
82
+ (0, object_types_1.stamp)(createRequest, object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_PRICE_REQUEST, 'PriceRequest', '0.0.1');
83
83
  createRequest.setCreatePriceInput(priceProto);
84
84
  const createAsync = (0, util_1.promisify)(this.client.createOrUpdate.bind(this.client));
85
85
  const response = yield createAsync(createRequest);
@@ -107,8 +107,7 @@ class PriceService {
107
107
  search(asOf, positionFilter) {
108
108
  return __awaiter(this, void 0, void 0, function* () {
109
109
  const searchRequest = new query_price_request_pb_1.QueryPriceRequestProto();
110
- searchRequest.setObjectClass('PriceRequest');
111
- searchRequest.setVersion('0.0.1');
110
+ (0, object_types_1.stamp)(searchRequest, object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_PRICE_REQUEST, 'PriceRequest', '0.0.1');
112
111
  searchRequest.setAsOf(asOf);
113
112
  searchRequest.setSearchPriceInput(positionFilter.toProto());
114
113
  const tmpClient = this.client;
@@ -1 +1 @@
1
- {"version":3,"file":"PriceService.js","sourceRoot":"","sources":["PriceService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PriceService.js","sourceRoot":"","sources":["PriceService.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,8 @@ import EnvConfig from '../../models/utils/requestcontext';
19
19
  import { Service } from '../../util/serviceaddress';
20
20
  import LinkResolver from '../../util/link-resolver';
21
21
  import * as LinkCacheModule from '../../util/link-cache';
22
+ import { ObjectTypeProto } from '../../../fintekkers/models/util/object_type_pb';
23
+ import { stamp } from '../../util/object-types';
22
24
 
23
25
  class PriceService {
24
26
  private client: PriceClient;
@@ -40,8 +42,7 @@ class PriceService {
40
42
  const priceProto = price instanceof Price ? price.proto : price;
41
43
 
42
44
  const createRequest = new CreatePriceRequestProto();
43
- createRequest.setObjectClass('PriceRequest');
44
- createRequest.setVersion('0.0.1');
45
+ stamp(createRequest, ObjectTypeProto.OBJECT_TYPE_CREATE_PRICE_REQUEST, 'PriceRequest', '0.0.1');
45
46
  createRequest.setCreatePriceInput(priceProto);
46
47
 
47
48
  const validateAsync = promisify(this.client.validateCreateOrUpdate.bind(this.client));
@@ -53,8 +54,7 @@ class PriceService {
53
54
  const priceProto = price instanceof Price ? price.proto : price;
54
55
 
55
56
  const createRequest = new CreatePriceRequestProto();
56
- createRequest.setObjectClass('PriceRequest');
57
- createRequest.setVersion('0.0.1');
57
+ stamp(createRequest, ObjectTypeProto.OBJECT_TYPE_CREATE_PRICE_REQUEST, 'PriceRequest', '0.0.1');
58
58
  createRequest.setCreatePriceInput(priceProto);
59
59
 
60
60
  const createAsync = promisify(this.client.createOrUpdate.bind(this.client));
@@ -81,8 +81,7 @@ class PriceService {
81
81
  */
82
82
  async search(asOf: LocalTimestampProto, positionFilter: PositionFilter): Promise<Price[]> {
83
83
  const searchRequest = new QueryPriceRequestProto();
84
- searchRequest.setObjectClass('PriceRequest');
85
- searchRequest.setVersion('0.0.1');
84
+ stamp(searchRequest, ObjectTypeProto.OBJECT_TYPE_QUERY_PRICE_REQUEST, 'PriceRequest', '0.0.1');
86
85
  searchRequest.setAsOf(asOf);
87
86
  searchRequest.setSearchPriceInput(positionFilter.toProto());
88
87
 
@@ -50,6 +50,8 @@ const serviceaddress_1 = require("../../util/serviceaddress");
50
50
  const uuid_1 = require("../../models/utils/uuid");
51
51
  const datetime_1 = require("../../models/utils/datetime");
52
52
  const LinkCacheModule = __importStar(require("../../util/link-cache"));
53
+ const object_type_pb_1 = require("../../../fintekkers/models/util/object_type_pb");
54
+ const object_types_1 = require("../../util/object-types");
53
55
  class SecurityService {
54
56
  constructor(apiKey) {
55
57
  if (apiKey) {
@@ -71,8 +73,7 @@ class SecurityService {
71
73
  // ModelValidationError before the gRPC round-trip.
72
74
  (0, security_rules_1.requireValid)(security);
73
75
  const createRequest = new create_security_request_pb_1.CreateSecurityRequestProto();
74
- createRequest.setObjectClass('SecurityRequest');
75
- createRequest.setVersion('0.0.1');
76
+ (0, object_types_1.stamp)(createRequest, object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_SECURITY_REQUEST, 'SecurityRequest', '0.0.1');
76
77
  createRequest.setSecurityInput(security);
77
78
  const validateCreateOrUpdateAsync = (0, util_1.promisify)(this.client.validateCreateOrUpdate.bind(this.client));
78
79
  const response = yield validateCreateOrUpdateAsync(createRequest);
@@ -85,8 +86,7 @@ class SecurityService {
85
86
  (0, identifier_1.validateIdentifiersForCreate)(security);
86
87
  (0, security_rules_1.requireValid)(security);
87
88
  const createRequest = new create_security_request_pb_1.CreateSecurityRequestProto();
88
- createRequest.setObjectClass('SecurityRequest');
89
- createRequest.setVersion('0.0.1');
89
+ (0, object_types_1.stamp)(createRequest, object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_SECURITY_REQUEST, 'SecurityRequest', '0.0.1');
90
90
  createRequest.setSecurityInput(security);
91
91
  const createSecurityAsync = (0, util_1.promisify)(this.client.createOrUpdate.bind(this.client));
92
92
  const response = yield createSecurityAsync(createRequest);
@@ -114,8 +114,7 @@ class SecurityService {
114
114
  searchSecurity(asOf, positionFilter) {
115
115
  return __awaiter(this, void 0, void 0, function* () {
116
116
  const searchRequest = new query_security_request_pb_1.QuerySecurityRequestProto();
117
- searchRequest.setObjectClass('SecurityRequest');
118
- searchRequest.setVersion('0.0.1');
117
+ (0, object_types_1.stamp)(searchRequest, object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_SECURITY_REQUEST, 'SecurityRequest', '0.0.1');
119
118
  searchRequest.setAsOf(asOf);
120
119
  searchRequest.setSearchSecurityInput(positionFilter.toProto());
121
120
  const tmpClient = this.client;
@@ -1 +1 @@
1
- {"version":3,"file":"SecurityService.js","sourceRoot":"","sources":["SecurityService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SecurityService.js","sourceRoot":"","sources":["SecurityService.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,8 @@ import { Service } from '../../util/serviceaddress';
24
24
  import { UUID } from '../../models/utils/uuid';
25
25
  import { ZonedDateTime } from '../../models/utils/datetime';
26
26
  import * as LinkCacheModule from '../../util/link-cache';
27
+ import { ObjectTypeProto } from '../../../fintekkers/models/util/object_type_pb';
28
+ import { stamp } from '../../util/object-types';
27
29
 
28
30
  class SecurityService {
29
31
  private client: SecurityClient;
@@ -48,8 +50,7 @@ class SecurityService {
48
50
  requireValid(security);
49
51
 
50
52
  const createRequest = new CreateSecurityRequestProto();
51
- createRequest.setObjectClass('SecurityRequest');
52
- createRequest.setVersion('0.0.1');
53
+ stamp(createRequest, ObjectTypeProto.OBJECT_TYPE_CREATE_SECURITY_REQUEST, 'SecurityRequest', '0.0.1');
53
54
  createRequest.setSecurityInput(security);
54
55
 
55
56
  const validateCreateOrUpdateAsync = promisify(this.client.validateCreateOrUpdate.bind(this.client));
@@ -63,8 +64,7 @@ class SecurityService {
63
64
  requireValid(security);
64
65
 
65
66
  const createRequest = new CreateSecurityRequestProto();
66
- createRequest.setObjectClass('SecurityRequest');
67
- createRequest.setVersion('0.0.1');
67
+ stamp(createRequest, ObjectTypeProto.OBJECT_TYPE_CREATE_SECURITY_REQUEST, 'SecurityRequest', '0.0.1');
68
68
  createRequest.setSecurityInput(security);
69
69
 
70
70
  const createSecurityAsync = promisify(this.client.createOrUpdate.bind(this.client));
@@ -91,8 +91,7 @@ class SecurityService {
91
91
 
92
92
  async searchSecurity(asOf: LocalTimestampProto, positionFilter: PositionFilter): Promise<Security[]> {
93
93
  const searchRequest = new QuerySecurityRequestProto();
94
- searchRequest.setObjectClass('SecurityRequest');
95
- searchRequest.setVersion('0.0.1');
94
+ stamp(searchRequest, ObjectTypeProto.OBJECT_TYPE_QUERY_SECURITY_REQUEST, 'SecurityRequest', '0.0.1');
96
95
  searchRequest.setAsOf(asOf);
97
96
 
98
97
  searchRequest.setSearchSecurityInput(positionFilter.toProto());
@@ -54,6 +54,6 @@ test('test the api.fintekkers.org security service by creating a maturity ladder
54
54
  }
55
55
  }
56
56
  }
57
- expect(results[0]['outstandingAmount']).toBeGreaterThan(0);
57
+ expect(results[0]['outstandingAmount'].greaterThan(0)).toBe(true);
58
58
  }), 90000);
59
59
  //# sourceMappingURL=security.maturityLadder.test.js.map
@@ -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;QAC1B,IAAI,QAAQ,GAAa,UAAU,CAAC,KAAK,CAAC,CAAC;QAE3C,IAAI,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;QAClD,IAAI,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,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;YACV,MAAM,YAAY,GAAG,MAAA,MAAA,QAAQ,CAAC,eAAe,EAAE,0CAAE,WAAW,EAAE,mCAAI,CAAC,CAAC;YACpE,IAAI,CAAC,QAAQ,CAAC,iCAAiC,EAAE,IAAI,YAAY,GAAG,IAAI,EAAE;gBACtE,6EAA6E;aAChF;iBAAM,IAAI,CAAC,QAAQ,CAAC,iCAAiC,EAAE,IAAI,YAAY,IAAI,IAAI,EAAE;gBAC9E,mDAAmD;aACtD;iBAAM;gBACH,IAAI,mBAAmB,GAAW,sCAAsB,CAAC,WAAW,CAAC,QAAQ,CAAC,iCAAiC,EAAE,CAAW,CAAC;gBAC7H,MAAM,WAAW,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;gBAC9C,IAAI,EAAE,GAAW,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,CAAC;gBAE5G,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;aACxB;SACJ;KACJ;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"}
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;AAG1E,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;QAC1B,IAAI,QAAQ,GAAa,UAAU,CAAC,KAAK,CAAC,CAAC;QAE3C,IAAI,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;QAClD,IAAI,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,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;YACV,MAAM,YAAY,GAAG,MAAA,MAAA,QAAQ,CAAC,eAAe,EAAE,0CAAE,WAAW,EAAE,mCAAI,CAAC,CAAC;YACpE,IAAI,CAAC,QAAQ,CAAC,iCAAiC,EAAE,IAAI,YAAY,GAAG,IAAI,EAAE;gBACtE,6EAA6E;aAChF;iBAAM,IAAI,CAAC,QAAQ,CAAC,iCAAiC,EAAE,IAAI,YAAY,IAAI,IAAI,EAAE;gBAC9E,mDAAmD;aACtD;iBAAM;gBACH,IAAI,mBAAmB,GAAY,sCAAsB,CAAC,WAAW,CAAC,QAAQ,CAAC,iCAAiC,EAAE,CAAY,CAAC;gBAC/H,MAAM,WAAW,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;gBAC9C,IAAI,EAAE,GAAW,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,CAAC;gBAE5G,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;aACxB;SACJ;KACJ;IAED,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACtE,CAAC,CAAA,EAAE,KAAK,CAAC,CAAC"}
@@ -8,6 +8,7 @@ import { SecurityService } from './SecurityService';
8
8
  import { PositionFilter } from '../../models/position/positionfilter';
9
9
  import Security from '../../models/security/security';
10
10
  import { ProtoSerializationUtil } from '../../models/utils/serialization';
11
+ import Decimal from 'decimal.js';
11
12
 
12
13
  test('test the api.fintekkers.org security service by creating a maturity ladder for the US government', async () => {
13
14
  //Get list of all securities from the US government, with a maturity data beyond today's date
@@ -37,7 +38,7 @@ test('test the api.fintekkers.org security service by creating a maturity ladder
37
38
  } else if (!issuance.getPostAuctionOutstandingQuantity() && maturityYear <= 2009) {
38
39
  //Swallow this data gap. It's old and we don't mind
39
40
  } else {
40
- let postAuctionQuantity: number = ProtoSerializationUtil.deserialize(issuance.getPostAuctionOutstandingQuantity()) as number;
41
+ let postAuctionQuantity: Decimal = ProtoSerializationUtil.deserialize(issuance.getPostAuctionOutstandingQuantity()) as Decimal;
41
42
  const identifiers = security.getIdentifiers();
42
43
  let id: string = identifiers.length > 0 ? identifiers[0].getIdentifierValue() : security.getID().toString();
43
44
 
@@ -52,6 +53,6 @@ test('test the api.fintekkers.org security service by creating a maturity ladder
52
53
  }
53
54
  }
54
55
 
55
- expect(results[0]['outstandingAmount']).toBeGreaterThan(0);
56
+ expect(results[0]['outstandingAmount'].greaterThan(0)).toBe(true);
56
57
  }, 90000);
57
58
 
@@ -50,6 +50,8 @@ const link_resolver_1 = __importDefault(require("../../util/link-resolver"));
50
50
  const LinkCacheModule = __importStar(require("../../util/link-cache"));
51
51
  const uuid_1 = require("../../models/utils/uuid");
52
52
  const datetime_1 = require("../../models/utils/datetime");
53
+ const object_type_pb_1 = require("../../../fintekkers/models/util/object_type_pb");
54
+ const object_types_1 = require("../../util/object-types");
53
55
  class TransactionService {
54
56
  constructor(apiKey) {
55
57
  if (apiKey) {
@@ -63,8 +65,7 @@ class TransactionService {
63
65
  validateCreateTransaction(transaction) {
64
66
  return __awaiter(this, void 0, void 0, function* () {
65
67
  const createRequest = new create_transaction_request_pb_1.CreateTransactionRequestProto();
66
- createRequest.setObjectClass('TransactionRequest');
67
- createRequest.setVersion('0.0.1');
68
+ (0, object_types_1.stamp)(createRequest, object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_TRANSACTION_REQUEST, 'TransactionRequest', '0.0.1');
68
69
  createRequest.setCreateTransactionInput(transaction.proto);
69
70
  const validateCreateOrUpdateAsync = (0, util_1.promisify)(this.client.validateCreateOrUpdate.bind(this.client));
70
71
  const response = yield validateCreateOrUpdateAsync(createRequest);
@@ -74,8 +75,7 @@ class TransactionService {
74
75
  createTransaction(transaction) {
75
76
  return __awaiter(this, void 0, void 0, function* () {
76
77
  const createRequest = new create_transaction_request_pb_1.CreateTransactionRequestProto();
77
- createRequest.setObjectClass('TransactionRequest');
78
- createRequest.setVersion('0.0.1');
78
+ (0, object_types_1.stamp)(createRequest, object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_CREATE_TRANSACTION_REQUEST, 'TransactionRequest', '0.0.1');
79
79
  createRequest.setCreateTransactionInput(transaction.proto);
80
80
  const createTransactionAsync = (0, util_1.promisify)(this.client.createOrUpdate.bind(this.client));
81
81
  const response = yield createTransactionAsync(createRequest);
@@ -94,8 +94,7 @@ class TransactionService {
94
94
  }
95
95
  searchTransaction(asOf, positionFilter, maxResults = 100) {
96
96
  const searchRequest = new query_transaction_request_pb_1.QueryTransactionRequestProto();
97
- searchRequest.setObjectClass('SecurityRequest');
98
- searchRequest.setVersion('0.0.1');
97
+ (0, object_types_1.stamp)(searchRequest, object_type_pb_1.ObjectTypeProto.OBJECT_TYPE_QUERY_TRANSACTION_REQUEST, 'SecurityRequest', '0.0.1');
99
98
  searchRequest.setAsOf(asOf);
100
99
  searchRequest.setSearchTransactionInput(positionFilter.toProto());
101
100
  searchRequest.setLimit(maxResults);
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionService.js","sourceRoot":"","sources":["TransactionService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TransactionService.js","sourceRoot":"","sources":["TransactionService.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,8 @@ import LinkResolver from '../../util/link-resolver';
20
20
  import * as LinkCacheModule from '../../util/link-cache';
21
21
  import { UUID } from '../../models/utils/uuid';
22
22
  import { ZonedDateTime } from '../../models/utils/datetime';
23
+ import { ObjectTypeProto } from '../../../fintekkers/models/util/object_type_pb';
24
+ import { stamp } from '../../util/object-types';
23
25
 
24
26
 
25
27
  class TransactionService {
@@ -36,8 +38,7 @@ class TransactionService {
36
38
 
37
39
  async validateCreateTransaction(transaction: Transaction): Promise<SummaryProto> {
38
40
  const createRequest = new CreateTransactionRequestProto();
39
- createRequest.setObjectClass('TransactionRequest');
40
- createRequest.setVersion('0.0.1');
41
+ stamp(createRequest, ObjectTypeProto.OBJECT_TYPE_CREATE_TRANSACTION_REQUEST, 'TransactionRequest', '0.0.1');
41
42
  createRequest.setCreateTransactionInput(transaction.proto);
42
43
 
43
44
  const validateCreateOrUpdateAsync = promisify(this.client.validateCreateOrUpdate.bind(this.client));
@@ -47,8 +48,7 @@ class TransactionService {
47
48
 
48
49
  async createTransaction(transaction: Transaction): Promise<CreateTransactionResponseProto> {
49
50
  const createRequest = new CreateTransactionRequestProto();
50
- createRequest.setObjectClass('TransactionRequest');
51
- createRequest.setVersion('0.0.1');
51
+ stamp(createRequest, ObjectTypeProto.OBJECT_TYPE_CREATE_TRANSACTION_REQUEST, 'TransactionRequest', '0.0.1');
52
52
  createRequest.setCreateTransactionInput(transaction.proto);
53
53
 
54
54
  const createTransactionAsync = promisify(this.client.createOrUpdate.bind(this.client));
@@ -69,8 +69,7 @@ class TransactionService {
69
69
  searchTransaction(asOf: LocalTimestampProto, positionFilter: PositionFilter, maxResults: number = 100):
70
70
  Promise<Transaction[]> {
71
71
  const searchRequest = new QueryTransactionRequestProto();
72
- searchRequest.setObjectClass('SecurityRequest');
73
- searchRequest.setVersion('0.0.1');
72
+ stamp(searchRequest, ObjectTypeProto.OBJECT_TYPE_QUERY_TRANSACTION_REQUEST, 'SecurityRequest', '0.0.1');
74
73
  searchRequest.setAsOf(asOf);
75
74
 
76
75
  searchRequest.setSearchTransactionInput(positionFilter.toProto());