@fintekkers/ledger-models 0.1.70 → 0.1.71

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.
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ // Note: Some classes and functions have been omitted or simplified due to lack of context.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.Position = void 0;
5
+ var field_pb_1 = require("../../../fintekkers/models/position/field_pb");
6
+ var measure_pb_1 = require("../../../fintekkers/models/position/measure_pb");
7
+ var decimal_js_1 = require("decimal.js");
8
+ var transaction_type_pb_1 = require("../../../fintekkers/models/transaction/transaction_type_pb");
9
+ var Position = /** @class */ (function () {
10
+ function Position(positionProto) {
11
+ this.proto = positionProto;
12
+ }
13
+ Position.prototype.getFieldValue = function (field) {
14
+ switch (field) {
15
+ case field_pb_1.FieldProto.TRADE_DATE:
16
+ case field_pb_1.FieldProto.EFFECTIVE_DATE:
17
+ case field_pb_1.FieldProto.MATURITY_DATE:
18
+ case field_pb_1.FieldProto.TAX_LOT_OPEN_DATE:
19
+ case field_pb_1.FieldProto.TAX_LOT_CLOSE_DATE:
20
+ var start = new Date(2024, 0, 1).getTime(); // January 1st of the startYear
21
+ var now = new Date().getTime();
22
+ var randomTime = start + Math.random() * (now - start);
23
+ return new Date(randomTime);
24
+ case field_pb_1.FieldProto.PRODUCT_TYPE:
25
+ var items = ['Bond', 'Equity'];
26
+ var randomIndex = Math.floor(Math.random() * items.length);
27
+ return items[randomIndex];
28
+ case field_pb_1.FieldProto.ASSET_CLASS:
29
+ var items2 = ['Equity', 'Fixed Income'];
30
+ var randomIndex2 = Math.floor(Math.random() * items2.length);
31
+ return items2[randomIndex2];
32
+ case field_pb_1.FieldProto.ASSET_CLASS:
33
+ var items3 = [transaction_type_pb_1.TransactionTypeProto.BUY, transaction_type_pb_1.TransactionTypeProto.SELL, transaction_type_pb_1.TransactionTypeProto.DEPOSIT, transaction_type_pb_1.TransactionTypeProto.WITHDRAWAL, transaction_type_pb_1.TransactionTypeProto.MATURATION];
34
+ var randomIndex3 = Math.floor(Math.random() * items3.length);
35
+ return items3[randomIndex3];
36
+ default:
37
+ throw new Error("No dummy data setup for this Field");
38
+ }
39
+ };
40
+ Position.prototype.getField = function (fieldToGet) {
41
+ throw Error("Do not cal this");
42
+ };
43
+ Position.prototype.getMeasureValue = function (measure) {
44
+ switch (measure) {
45
+ case measure_pb_1.MeasureProto.DIRECTED_QUANTITY:
46
+ return new decimal_js_1.default(Math.random() * 100000);
47
+ case measure_pb_1.MeasureProto.UNADJUSTED_COST_BASIS:
48
+ return new decimal_js_1.default(Math.random() * 100);
49
+ case measure_pb_1.MeasureProto.MARKET_VALUE:
50
+ return new decimal_js_1.default(Math.random() * 10000000);
51
+ }
52
+ };
53
+ Position.prototype.getMeasure = function (measureToGet) {
54
+ throw new Error("Do not call this");
55
+ };
56
+ Position.prototype.getFieldDisplay = function (fieldToGet) {
57
+ throw new Error("Do not call this");
58
+ };
59
+ Position.prototype.getMeasures = function () {
60
+ return [measure_pb_1.MeasureProto.DIRECTED_QUANTITY, measure_pb_1.MeasureProto.UNADJUSTED_COST_BASIS, measure_pb_1.MeasureProto.MARKET_VALUE];
61
+ };
62
+ Position.prototype.getFields = function () {
63
+ return [field_pb_1.FieldProto.SECURITY_ID, field_pb_1.FieldProto.TRADE_DATE, field_pb_1.FieldProto.ASSET_CLASS, field_pb_1.FieldProto.TRANSACTION_TYPE];
64
+ };
65
+ return Position;
66
+ }());
67
+ exports.Position = Position;
68
+ //# sourceMappingURL=hardcoded.position.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hardcoded.position.js","sourceRoot":"","sources":["hardcoded.position.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,148 @@
1
+ // Note: Some classes and functions have been omitted or simplified due to lack of context.
2
+
3
+ import { FieldProto } from "../../../fintekkers/models/position/field_pb";
4
+ import { PositionProto } from "../../../fintekkers/models/position/position_pb";
5
+ import { FieldMapEntry, MeasureMapEntry } from "../../../fintekkers/models/position/position_util_pb";
6
+ import { MeasureProto } from "../../../fintekkers/models/position/measure_pb";
7
+ import Decimal from "decimal.js";
8
+ import { TransactionTypeProto } from "../../../fintekkers/models/transaction/transaction_type_pb";
9
+
10
+ export class Position {
11
+ proto: PositionProto;
12
+
13
+ constructor(positionProto: PositionProto) {
14
+ this.proto = positionProto;
15
+ }
16
+
17
+ public getFieldValue(field: FieldProto): any {
18
+ switch (field) {
19
+ case FieldProto.TRADE_DATE:
20
+ case FieldProto.EFFECTIVE_DATE:
21
+ case FieldProto.MATURITY_DATE:
22
+ case FieldProto.TAX_LOT_OPEN_DATE:
23
+ case FieldProto.TAX_LOT_CLOSE_DATE:
24
+ const start = new Date(2024, 0, 1).getTime(); // January 1st of the startYear
25
+ const now = new Date().getTime();
26
+ const randomTime = start + Math.random() * (now - start);
27
+ return new Date(randomTime);
28
+ case FieldProto.PRODUCT_TYPE:
29
+ let items = ['Bond', 'Equity']
30
+ const randomIndex = Math.floor(Math.random() * items.length);
31
+ return items[randomIndex];
32
+ case FieldProto.ASSET_CLASS:
33
+ let items2 = ['Equity', 'Fixed Income']
34
+ const randomIndex2 = Math.floor(Math.random() * items2.length);
35
+ return items2[randomIndex2];
36
+ case FieldProto.ASSET_CLASS:
37
+ let items3 = [TransactionTypeProto.BUY, TransactionTypeProto.SELL, TransactionTypeProto.DEPOSIT, TransactionTypeProto.WITHDRAWAL, TransactionTypeProto.MATURATION];
38
+ const randomIndex3 = Math.floor(Math.random() * items3.length);
39
+ return items3[randomIndex3];
40
+ default:
41
+ throw new Error("No dummy data setup for this Field");
42
+ }
43
+ }
44
+
45
+ public getField(fieldToGet: FieldMapEntry): any {
46
+ throw Error("Do not cal this");
47
+ }
48
+
49
+ public getMeasureValue(measure: MeasureProto): Decimal {
50
+ switch (measure) {
51
+ case MeasureProto.DIRECTED_QUANTITY:
52
+ return new Decimal(Math.random() * 100000);
53
+ case MeasureProto.UNADJUSTED_COST_BASIS:
54
+ return new Decimal(Math.random() * 100);
55
+ case MeasureProto.MARKET_VALUE:
56
+ return new Decimal(Math.random() * 10000000);
57
+ }
58
+ }
59
+
60
+ private getMeasure(measureToGet: MeasureMapEntry): Decimal {
61
+ throw new Error("Do not call this");
62
+ }
63
+
64
+ public getFieldDisplay(fieldToGet: FieldMapEntry): string {
65
+ throw new Error("Do not call this");
66
+ }
67
+
68
+ public getMeasures(): MeasureProto[] {
69
+ return [MeasureProto.DIRECTED_QUANTITY, MeasureProto.UNADJUSTED_COST_BASIS, MeasureProto.MARKET_VALUE];
70
+ }
71
+
72
+ public getFields(): FieldProto[] {
73
+ return [FieldProto.SECURITY_ID, FieldProto.TRADE_DATE, FieldProto.ASSET_CLASS, FieldProto.TRANSACTION_TYPE];
74
+ }
75
+
76
+ // public toString(): string {
77
+ // let output = "";
78
+
79
+ // for (const field of this.getFields()) {
80
+ // output += `${FieldProto[field.getField()]},`;
81
+ // output += `${this.getFieldDisplay(field)};`;
82
+ // }
83
+
84
+ // for (const measure of this.getMeasures()) {
85
+ // output += `${MeasureProto[measure.getMeasure()]},`;
86
+ // const tmp: Decimal = this.getMeasure(measure);
87
+ // output += `${tmp.toString()};`;
88
+ // }
89
+
90
+ // return output;
91
+ // }
92
+
93
+ // private static wrapStringToAny(myString: string): Any {
94
+ // const myAny = new Any();
95
+ // myAny.pack(wrappers.StringValue.create({ value: myString }));
96
+ // return myAny;
97
+ // }
98
+
99
+ // private static packField(fieldToPack: any): Any {
100
+ // const myAny = new Any();
101
+ // myAny.pack(fieldToPack);
102
+ // return myAny;
103
+ // }
104
+
105
+ // public static unpackField(fieldToUnpack: FieldMapEntry): any {
106
+ // switch (fieldToUnpack.getField()) {
107
+ // case FieldProto.PORTFOLIO_ID:
108
+ // case FieldProto.SECURITY_ID:
109
+ // case FieldProto.ID:
110
+ // return UUIDProto.deserializeBinary(fieldToUnpack.getFieldValuePacked().getValue());
111
+ // case FieldProto.AS_OF:
112
+ // return LocalTimestampProto.deserializeBinary(fieldToUnpack.getFieldValuePacked().getValue());
113
+ // case FieldProto.TRADE_DATE:
114
+ // case FieldProto.MATURITY_DATE:
115
+ // case FieldProto.ISSUE_DATE:
116
+ // case FieldProto.SETTLEMENT_DATE:
117
+ // case FieldProto.TAX_LOT_OPEN_DATE:
118
+ // case FieldProto.TAX_LOT_CLOSE_DATE:
119
+ // return LocalDateProto.deserializeBinary(fieldToUnpack.getFieldValuePacked().getValue());
120
+ // case FieldProto.IDENTIFIER:
121
+ // return IdentifierProto.deserializeBinary(fieldToUnpack.getFieldValuePacked().getValue());
122
+ // case FieldProto.TRANSACTION_TYPE:
123
+ // case FieldProto.POSITION_STATUS:
124
+ // // Assuming ProtoEnum is properly defined elsewhere
125
+ // // const descriptor = FieldProto.DESCRIPTOR.valuesByNumber[fieldToUnpack.field];
126
+ // return null; //new ProtoEnum(descriptor, fieldToUnpack.enumValue);
127
+ // case FieldProto.PORTFOLIO_NAME:
128
+ // case FieldProto.SECURITY_DESCRIPTION:
129
+ // case FieldProto.PRODUCT_TYPE:
130
+ // case FieldProto.ASSET_CLASS:
131
+ // return StringValue.deserializeBinary(fieldToUnpack.getFieldValuePacked().getValue());
132
+ // case FieldProto.PORTFOLIO:
133
+ // return PortfolioProto.deserializeBinary(fieldToUnpack.getFieldValuePacked().getValue());
134
+ // case FieldProto.SECURITY:
135
+ // return SecurityProto.deserializeBinary(fieldToUnpack.getFieldValuePacked().getValue());
136
+ // default:
137
+ // throw new Error(`Field not found. Could not unpack ${FieldProto[fieldToUnpack.getField()]}`);
138
+ // }
139
+ // }
140
+
141
+ // public static unpackMeasure(measureToUnpack: MeasureProto): DecimalValueProto {
142
+ // if (measureToUnpack === MeasureProto.DIRECTED_QUANTITY) {
143
+ // return measureToUnpack.g;
144
+ // } else {
145
+ // throw new Error(`Field not found. Could not unpack ${MeasureProto.Name[measureToUnpack.measure]}`);
146
+ // }
147
+ // }
148
+ }
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.70",
4
+ "version": "0.1.71",
5
5
  "description": "ledger model protos ",
6
6
  "authors": [
7
7
  "David Doherty",